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

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

第一步:新建一个类实现IEqualityComparer<ActionInfo>接口,用实现此接口的方法。

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

例子:

1.新建的类

public class ActionEqualCompare:IEqualityComparer<ActionInfo>

    {

        public bool Equals(ActionInfo x, ActionInfo y)

        {

            return x.ID.Equals(y.ID);

        }

        public int GetHashCode(ActionInfo obj)

        {

            return obj.GetHashCode();

        }

}

2.调用

List<item>temp=list.Distinct(new ActionEqualCompare ()).ToList();