c# - 如何在 Enumerable.Distinct() 中使用 lambda 表达式

标签 c# linq lambda

我有一个可枚举的对象,我需要为其指定相等性。

var values = list.Distinct();

有没有办法在 Enumerable.Distinct() 中使用 lambda 表达式或一些等效的解决方法?

var values = list.Distinct((value1, value2) => value1.Id == value2.Id);

最佳答案

您可以,但需要创建一个实现 IEqualityComparer 的类。然后你使用 Enumerable.Distinct Method (IEnumerable, IEqualityComparer)

关于c# - 如何在 Enumerable.Distinct() 中使用 lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22813541/

相关文章:

c# - Entity Framework 中的 Linq SelectMany

c# - 泛型方法和谓词的问题

java - 我怎样才能抑制匿名 new runnable() 可以用 lambda 代替

Python Pandas 滚动窗口应用多个 lambda 函数

c# - 使用 LINQ 进行过滤

Python (2.7) - 考虑多个字段的简单 IF THEN 逻辑

c# - web.config 中的 enforceFIPSPolicy 标志似乎不适用于 Web 应用程序

c# - 访问私有(private)字段

c# - 循环遍历 DataTable

c# - 如何使用 VS Code(Windows 平台)编译控制台应用程序?