Linq Distinct()是去重复的作用,但是默认的是比较对应的引用类型,即排除重复引用类型的对象。否则,我们需要自定义比较对象。
自定义的比较对象,需要实现接口IEqualityComparer,如下为自定义的对象实例:
public class AppCaseComparer : IEqualityComparer<AppCase>
{
public bool Equals(AppCase x, AppCase y)
{
return (x.CaseId == y.CaseId);
}
public int GetHashCode(AppCase obj)
{
return obj.CaseId.GetHashCode();
}
}
//排除重复案件编号
var distinctCase = groupItem.Distinct(new AppCaseComparer()).ToList();