Linq从相邻列返回值

bd5*_*528 2 c# linq

我有一个表格,格式如下:

Type   Date   Code
 1   01/01/13  AA
 1   01/01/13  AB
 1   01/01/13  FV
 1   02/01/13  AE
Run Code Online (Sandbox Code Playgroud)

使用联接对另一个表,我可以通过以下方式恢复最高日期: -

g.Max(d => f.Field<DateTime>("End Date"))
Run Code Online (Sandbox Code Playgroud)

返回02/01/13.我想知道的是如何返回"AE",即:相邻列中的值.

Jon*_*eet 7

你正在使用LINQ to Objects(看起来已经提取了一个DataTable),你可以使用MoreLINQ,它有一个MaxBy方法:

var code = g.MaxBy(f => f.Field<DateTime>("End Date"))
            .Field<string>("Code");
Run Code Online (Sandbox Code Playgroud)

(免责声明:我刚刚开始使用MoreLINQ,虽然其他人现在比我更活跃.)