LINQ扩张实现去重复

LINQ扩张实现去重复

LINQ扩展实现去重复

/// <summary>
/// 自定义去重复
/// </summary>
public static IEnumerable<TSource> IDistinctBy<TSource, TKey>(this IEnumerable<TSource> source, Func<TSource, TKey> keySelector)
{


var seenKeys = new HashSet<TKey>();
return source.Where(element => seenKeys.Add(keySelector(element)));


}

1楼吴瑞祥
linq不是有去重的方法吗..
Re: FoxFei
@吴瑞祥,这个比Linq自带的Distinct要方便些,且可以针对对象内某一个字段进行排序,觉得还不错,这也是我第一篇文章,可能描述方面没写全