我如何GroupBy这个LINQ查询?

时间:2012-06-19 13:30:39

标签: c# .net linq

这是我的代码:

objectList = (from MyObject obj in MyObjects
             select r).ToList();

我希望使用" distinct"返回每个记录的列表。 obj.ID.我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

听起来你可能想要ToLookup

var lookup = MyObjects.ToLookup(x => x.ID);

这使您可以获取任何特定ID的所有值,或迭代分组。这是热切评估,而不是GroupBy的懒惰评估,这可能是你在这种情况下想要的。

这是假设我正确地理解了您的要求 - 完全有可能我没有......如果您能澄清它将会有所帮助。

答案 1 :(得分:2)

这会为您提供IGrouping<int, MyObject>类型的列表(请注意,我认为ID的类型为int):

groupedList = (from obj in MyObjects
             group obj by obj.ID into grouped
             select grouped).ToList();