2

我有一个CarData具有以下属性的对象:
PrimaryKey Make Model Year Drivetrain Country

CarData在 List 中有大约 1000 个这样的对象:
List<CarData> CarObjects

有没有一种简单的方法来获取不同Makes 的列表?

4

3 回答 3

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

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

于 2013-02-14T15:28:19.930 回答
2

您可以使用 Linq:

CarObjects.Select ( c => c.Make ).Distinct().ToList()
于 2013-02-14T15:29:34.913 回答
1
var makeList = CarObjects.Select(a => a.Make).Distinct();

或者

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

作为一个额外的建议,您可能需要考虑Make成为一个枚举,因为(可能)有有限(而且相当少)数量的可能的汽车品牌,而不是将它们堆积到Strings. (你没有提到什么样的财产Make是,所以也许你已经这样做了)。

于 2013-02-14T15:28:34.650 回答