说我的结构如下:
class SomeObject
Public Name as String
Public Created as Date
...
end class
我有一个List(of SomeObject),它有不同时间的每个名称的多个条目。我想为每个名称选择最新的(最大的Created值)对象。
假设:
Name Created
A 2010-04-16 *
A 2010-04-15
B 2010-04-12
B 2010-04-13 *
C 2010-04-16 *
我想选择旁边带*的对象。
这可以使用LINQ吗?
答案 0 :(得分:2)
是:
var maxObjects =
from o in myList
group o by o.Name into g
select new { Name = g.Key, Created = g.Max(o => o.Created) };
请参阅101 Linq samples,了解如何使用Linq。