C#LINQ,带有JOIN和GroupBy的脚本引发异常
我正在处理.NET CORE 5平台上的LINQ脚本以及Entity Framework CORE 5.0.8脚本。该脚本与组一起简单左连接,但出现异常,如果不应用组,则我可以看到结果。。。不知道我在拼图中遗漏了什么
exception
could not be translated. Either rewrite the query in a form that can be translated, or switch to client evaluation explicitly by inserting a call to 'AsEnumerable', 'AsAsyncEnumerable', 'ToList', or 'ToListAsync'
code
var a1 = (from site in db.Sites join machine in db.Machines on site.SiteId equals machine.SiteId into sm from siteMachines in sm.DefaultIfEmpty() where site.SiteId == SiteId group siteMachines by site into groupedSiteMachines select new { listedSite = groupedSiteMachines.Key, SiteMachines = groupedSiteMachines.FirstOrDefault() == null? null : groupedSiteMachines } ).ToList() ;
在.NET5中,GroupBy
不会转换为SQL
查询,您应该在GroupBy
语句之前使用AsEnumerable
或.ToList
。
首先,您应该从SQL
读取数据,而不使用任何GroupBy
语句,当数据在内存中接收时,使用GroupBy
。
转 https://www.5axxw.com/questions/content/9j38s3
标签:
ef
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-07-21 vscode格式化html标签属性不换行(vetur插件)
2021-07-21 VSCode 使用Vetur对vue文件进行格式化
2021-07-21 信息搜集一些总结
2021-07-21 程序员腰突经历分享(中)
2021-07-21 Vue权限路由实现总结
2021-07-21 c++中的静态成员
2021-07-21 Spring 的循环依赖问题