c# - 使用 LINQ 按类属性区分

标签 c# linq distinct

<分区>

我有一个收藏:

List<Car> cars = new List<Car>();

汽车由其属性 CarCode 唯一标识。

我的收藏中有三辆车,其中两辆具有相同的 CarCodes。

如何使用 LINQ 将此集合转换为具有唯一 CarCodes 的汽车?

最佳答案

您可以使用分组,并从每个组中获取第一辆车:

List<Car> distinct =
  cars
  .GroupBy(car => car.CarCode)
  .Select(g => g.First())
  .ToList();

关于c# - 使用 LINQ 按类属性区分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2537823/

相关文章:

c# - 选择 ID 在 int 数组中的实体 - WCF 数据服务,LINQ

php - 匹配过程中如何避免重复?

sql - 按特定条件分组 - SQL

c# - 从 C# 中的 List<> 中删除 3 个最旧的元素

sql - 如何在 Entity Framework 方法语法中应用 SQL in 关键字?

c# - 有没有什么好的方法可以在 Unity 中使用事件?

linq - 寻求 Entity Framework 中 3 层 LINQ 查询的建议

excel - 如何在具有过滤器的数据透视表(Excel for Mac)中获得不同的计数?

c# - 字符串类型的引用对象比较

c# - 在 C# 中结合 SQL `raiserror` 和 `select`