此问题已在此处有答案:
How to select only several columns from GroupBy... First()(1个答案)
27天前关闭
在使用EF Core 3.1的Linq上,在Group By查询中使用.First()是否有一个不错的方法?
下面是一个从SQL阅读的查询示例
var test = from r in dc.Role
join f in dc.Role_User on r.RoleID equals f.RoleID
group f by r.RoleID into g
select new
{
RoleID = g.Key,
SampleUserID = g.First().UserID,
};
字符串
此查询给出错误:
LINQ表达式'(GroupByShaperExpression:.....无法翻译“.First()”。
通过在单独的查询中执行组,然后在其上进行联接似乎不起作用。
转换为IEnumerable可能会起作用,但对于大型表,将数据带到客户端会导致性能问题。IQueryable是首选。
1条答案
按热度按时间xqkwcwgp1#
您可以在下面的代码中使用First()获取UserID。
字符串
在该流程中,在初始查询中执行分组,并在测试中存储为组数据。从第二个查询中,我们得到了UserID。