首页 > 解决方案 > C# 返回具有匹配属性的对象列表

问题描述

我有以下对象:

class Car{
   int price;
   string color;
   string size;
}

var list = new List<Car>();
list.Add...//add 20 cars

//I now want to select from this list any cars whose color and size matches that of any other car

list.Select(car => String.Join(car.color, car.size)) 

我想从此列表中选择一组字符串(颜色+大小),这些字符串存在于列表中的不止一辆汽车中

不知道在哪里继续使用linq,因为我一直在努力解决这个问题

标签: c#linq

解决方案


var groupedCars = list.
    GroupBy(c => c.color + c.size, c => c).
    Where(g => g.Count() > 1);

推荐阅读