从List中获取不同的参数

时间:2013-02-14 15:26:42

标签: c# list

我有一个CarData对象,其中包含以下属性:
PrimaryKey Make Model Year Drivetrain Country

我在列表中有大约1000个CarData个对象:
List<CarData> CarObjects

是否有一种简单的方法来获取不同的Make s?

列表

3 个答案:

答案 0 :(得分:4)

var makes = CarObjects.Select(car => car.Make).Distinct();

这会将列表从CarData列表转换为Make列表,然后只查找新列表的不同值。

答案 1 :(得分:2)

您可以使用Linq:

CarObjects.Select ( c => c.Make ).Distinct().ToList()

答案 2 :(得分:1)

var makeList = CarObjects.Select(a => a.Make).Distinct();

List<MakeEnum> = CarObjects.Select(a => a.Make).Distinct().ToList();

作为一个额外的建议,你可能会考虑让Make成为一个枚举,因为(可能)有一个有限(而且相当小)的可能的汽车制造数量,而不是把它们堆成Strings。 (你没有提到Make是什么类型的财产,所以也许你已经这样做了。)