62,046
社区成员
发帖
与我相关
我的任务
分享
public class PersonDataRowComparer : IEqualityComparer<t_Personnel>
{
public bool Equals(t_Personnel t1, t_Personnel t2)
{
return (t1.ID == t2.ID && t1.FirstName == t2.FirstName);
}
public int GetHashCode(t_Personnel t)
{
return t.ToString().GetHashCode();
}
}
//
// 摘要:
// 通过使用指定的 System.Collections.Generic.IEqualityComparer`1 对值进行比较返回序列中的非重复元素。
//
// 参数:
// source:
// 要从中移除重复元素的序列。
//
// comparer:
// 用于比较值的 System.Collections.Generic.IEqualityComparer`1。
//
// 类型参数:
// TSource:
// source 中的元素的类型。
//
// 返回结果:
// 一个 System.Collections.Generic.IEnumerable`1,包含源序列中的非重复元素。
//
// 异常:
// T:System.ArgumentNullException:
// source 为 null。
public static IEnumerable<TSource> Distinct<TSource>(this IEnumerable<TSource> source, IEqualityComparer<TSource> comparer);
注意IEqualityComparer<TSource> comparer,因为你返回的是实体,所以默认比较是不对滴