List集合去重的一种方法


需要对一个List<Model>集合去重,情况是该集合中会出现多个Name属性值相同的,但是其他属性值不同的数据。

在这种情况下,需求要只保留其中一个就好。

定义Compare类,继承IEqualityComparer接口

public class ComparerHelper : IEqualityComparer<Model>
    {
        public bool Equals(Model x, Model y)
        {
            return x.Name== y.Name;
        }
        public int GetHashCode(Model obj)
        {
            return obj.Title.GetHashCode();
        }
    }

调用如下:

modelList = modelList.Distinct(new ComparerHelper()).ToList();

相关阅读 >>

List<string>初始化赋值两种方式

c# .net 将List序列化

c#中List的用法

List<>初始化时赋值的方法

深入了解数组、List和arrayList的区别

c#中关于List<t>的并集与交集以及差集解析

List集合去重的一种方法

更多相关阅读请进入《List》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...