我有这样的Customer表
ID EndDate
1 2/11/2010
1 3/14/2011
2 5/3/2011
2 12/1/2011
3 4/5/2010
Run Code Online (Sandbox Code Playgroud)
我想为每个ID组取最大日期的行,结果如下:
ID EndDate
1 3/14/2011
2 12/1/2011
3 4/5/2010
Run Code Online (Sandbox Code Playgroud)
如何在c#中使用一个流畅的语法(没有循环或第二个语句)来获得结果?
Customers.GroupBy( c => c.ID ).....//How do I proceed?
Run Code Online (Sandbox Code Playgroud)
您可以使用:
var results = Customers.GroupBy(c => c.ID)
.Select(
g => g.OrderByDescending(c => c.EndDate).First() );
Run Code Online (Sandbox Code Playgroud)