如何从对象列表中选择不同的值? 我只想获取特定字段的列表,而不是整个对象的列表。
例如要查询的集合:
name year
Item1 2009
Item2 2009
Item3 2010
Item4 2010
Item5 2011
Item6 2011
然后我想返回不同的年份以获得以下结果集合
2009
2010
2011
2012
我试过了
distinctyears = myCollection.GroupBy(x => x.year).Select(x => x.First()).ToList();
但这将返回整个对象的集合,而不仅仅是年份值。
最佳答案
distinctyears = myCollection.Select(x => x.year).Distinct()
会给你一个IEnumerable<int>
(或任何类型的年份)
无需进行分组 - 您只需要结果中的年份,所以只需捕获它即可。
关于c# - 仅通过一个字段从对象列表中查找不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31052358/