我正在尝试在 EF core 3.1 中分组加入它返回的问题
处理 LINQ 表达式“DbSet”失败。这可能表明 EF Core 中存在错误或限制
我的代码是这样的
var employees = await (from enrollment in RepositoryContext.Enrollments
join allowance in RepositoryContext.Allowances.Include(y=>y.AllowanceType) on enrollment.EmployeeId equals allowance.EmployeeId
into allowances
select new
{
enrollment,
allowances
}
).AsNoTracking().ToListAsync();
the 津贴是项目列表,
是否有任何解决方法可以像这样运行查询,因为我需要它以获得更好的性能。
Here 使用 GroupBy 或 GroupJoin 查询会引发异常是现已关闭的 GitHub 问题/讨论,我试图说服 EF Core 团队添加GroupJoin
翻译。他们拒绝这样做并打开了无用的查询:最终查询运算符时支持 GroupJoin #19930我将继续为这样的翻译而奋斗。因此,请前往那里对完整的翻译请求发表评论/投票。
您还会在那里找到解决方法 - 而不是不受支持GroupJoin
使用等效支持的相关子查询方法,例如代替
join allowance in RepositoryContext.Allowances.Include(y => y.AllowanceType)
on enrollment.EmployeeId equals allowance.EmployeeId
into allowances
with
let allowances = RepositoryContext.Allowances.Include(y => y.AllowanceType)
.Where(allowance => enrollment.EmployeeId == allowance.EmployeeId)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)