复杂类型集合去掉重复项的实现方法

第一步:新建一个类实现IEqualityComparer<T>接口,用实现此接口的方法。T是复杂集合中对象的类型。

第二步:复杂类型集合=复杂类型集合.Distinct(new 新建类()).ToList();

例子:

1.新建的类

public class EqualCompare:IEqualityComparer<T>

    {

        public bool Equals(T x, T y)

        {

            return x.ID.Equals(y.ID);//(ID是要去重复类型的字段)

        }

        public int GetHashCode(T obj)

        {

            return obj.ID.GetHashCode();

        }

}

2.调用

List<T>temp=list.Distinct(new EqualCompare ()).ToList();

posted @ 2016-07-01 20:42  576  阅读(277)  评论(0编辑  收藏  举报