c# list数据去重,使用linq的GroupBy数据去重只需要三行代码

时间:2025-01-24 20:03:47

c# list数据去重,使用linq的GroupBy数据去重只需要三行代码

模型代码

    public class UserInfo
    {
        public int id { set; get; }
        public string name { set; get; }
        public int typeid { set; get; }
    }

准备数据

#region 准备数据
            List<UserInfo> Userinfolist3 = new List<UserInfo>();

            (new UserInfo()
            {
                id = 1,
                name = "name1",
                typeid = 1
            });

            (new UserInfo()
            {
                id = 1,
                name = "name1.1",
                typeid = 1
            });

            (new UserInfo()
            {
                id = 2,
                name = "name2",
                typeid = 1
            });
            (new UserInfo()
            {
                id = 2,
                name = "name2.2",
                typeid = 1
            });

            (new UserInfo()
            {
                id = 3,
                name = "name3",
                typeid = 1
            });
            #endregion

业务代码

不带注释

            ("、、、、、、、、、【数据去重】、、、、、、、、、"); 
 
            var newList = (u=>);
            List<UserInfo> repeatDataList = new List<UserInfo>();
            foreach (var item in newList)
            {
                (()[0]); 
            }

带注释

            ("、、、、、、、、、【数据去重】、、、、、、、、、");
            ("【原始数据】");
            foreach (var item in Userinfolist3)
            {
                ($"intlist1--id{}|name:{}|type:{}");
            }
            ("【去重数据】");
            var newList = (u=>);
            List<UserInfo> repeatDataList = new List<UserInfo>();
            foreach (var item in newList)
            {
                (()[0]);
               ($"去重--id{()[0].id}|name:{()[0].name}|type:{()[0].name}");
            }

结果

、、、、、、、、、【数据去重】、、、、、、、、、
【原始数据】
intlist1--id1|name:name1|type:1
intlist1--id1|name:name1.1|type:1
intlist1--id2|name:name2|type:1
intlist1--id2|name:name2.2|type:1
intlist1--id3|name:name3|type:1
【去重数据】
去重--id1|name:name1|type:name1
去重--id2|name:name2|type:name2
去重--id3|name:name3|type:name3

c# Linq GroupBy数据分组,实现分组查询,带案例

/cplvfx/article/details/119913768