根据使用LINQ的某些字段和标准的最大值选择数据行

本文关键字:标准 最大值 选择 数据 字段 LINQ | 更新日期: 2023-09-27 18:15:35

这是我的代码(不工作,显然)。但是,不知道如何实现这个…

DataRow dRow =  dsMain.tblStudentMaster.Select("stM_ClassNo=VI")).Max<DataRow>(row => row["StudentRollNo"]);

在一个特定的教室里,我想挑出有最大学号的学生。我想要的是DataRow,而不是RollNo(得到行后,RollNo显然是可用的)。

根据使用LINQ的某些字段和标准的最大值选择数据行

您必须相应地排列行:

DataRow dRow =  dsMain.tblStudentMaster.AsEnumerable()
    .OrderByDescending(r => r.Field<int>("StudentRollNo"))
    .FirstOrDefault();

(假设列StudentRollNo的类型为int)

您也可以尝试MoreLINQ中的MaxBy扩展方法

dsMain.tblStudentMaster.MaxBy(item => item.FieldYouWantMaxFrom);