毫无疑问是使用Distinct()或者DistinctBy方法,
但是需要注意的是DistinctBy不是.net framework提供的扩展方法,是第三方的扩展方法
因此,这里给出的是扩展函数:
/// <summary>
/// 排序扩展
/// DistinctBy不是.net framework提供的扩展方法,是第三方的扩展方法
/// </summary>
/// <typeparam name="t"></typeparam>
/// <param name="list"></param>
/// <param name="propertySelector"></param>
/// <returns></returns>
public static IEnumerable<t> DistinctBy<t>(this IEnumerable<t> list, Func<t, object> propertySelector)
{
return list.GroupBy(propertySelector).Select(x => x.First());
}
使用方法:
query = query.DistinctBy(t => t.terms==something);
本文介绍了一种在.NET Framework中去除集合内重复项的有效方法——使用自定义的DistinctBy扩展方法。此方法允许开发者指定用于判断元素唯一性的属性,从而实现更灵活的数据过滤。
2137

被折叠的 条评论
为什么被折叠?



