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)));


}

posted @ 2016-09-12 14:21  FoxFei  阅读(501)  评论(3编辑  收藏  举报