假设我有一个包含5列的表(col_1,col_2,col_3,col_4,col_5)。
我正在尝试使用linq查询按2列(col_2,col_3)分组,我必须选择第4列(col_4)排序的第一个记录,并且必须获得所有记录的所有5列的整行得到。
from abcd in Context.table
group abcd by new { abcd.col2, abcd.col2 }
into temp orderby temp.orderby(x=> x.col_4)
select ..
这里我很困惑如何获得整个行值,
此外,我不确定这个排序逻辑是否会按我的意愿运作
我正在使用EntityFramework,我已经拥有该行的实体类型, 我创建了一个对象,该对象是该类的列表。
因此,如果我可以直接获取该对象中的结果,那将是最好的。
答案 0 :(得分:0)
每个组都是原始项目的集合,因此您可以在每个组中使用OrderBy
和First
等Linq方法:
from abcd in Context.table
group abcd by new { abcd.col2, abcd.col3 }
into temp
select temp.OrderBy(x=> x.col_4).First()