首页 > 其他分享 >EF Core无法翻译groupby等子查询

EF Core无法翻译groupby等子查询

时间:2022-12-18 01:11:32浏览次数:43  
标签:DeptId Core query1 EF var Salary new groupby

烦人的表达式转化错误

var query1= emps.Grouby(v=>v.DeptId).Select(g=>new { DeptId=g.Key,Salary=g.Max(x=>x.Salary);
var result=from d in depts
               join q in query1 on d.Id equals q.DeptId
               select new { d.Name,q.Salary};

上面代码运行起来,EF Core绝对说表达式树无法翻译,为什么呢?
因为query1是匿名类型,也就是说DeptId可空,就等下面表达式的d.Id类型不匹配,因此只需要select是强类型就好了

var query1= emps.Grouby(v=>v.DeptId).Select(g=>new Emp{ DeptId=g.Key,Salary=g.Max(x=>x.Salary);
var result=from d in depts
               join q in query1 on d.Id equals q.DeptId
               select new { d.Name,q.Salary};

标签:DeptId,Core,query1,EF,var,Salary,new,groupby
From: https://www.cnblogs.com/ShuiSen/p/16989903.html

相关文章

  • CSharp: Chain of Responsibility Pattern in donet core 6
     usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceGeovin.Du.DuChainOfResponsib......
  • 基于.NetCore开发博客项目 StarBlog - (21) 开始开发RESTFul接口
    前言最近电脑坏了,开源项目的进度也受到一些影响这篇酝酿很久了,作为本系列第二部分(API接口开发)的第一篇,得想一个好的开头,想着想着就鸽了好久,索性不扯那么多了,直接开写吧~......
  • CSharp: Proxy Pattern in donet.core 6.0
     usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceGeovin.Du......
  • .NET Core应用如何通过SSL访问MongoDB?
    大家好,我是Edison。最近有一个ASP.NETCore通过SSL证书访问MongoDB的需求,但是在网上发现资料很少,于是调查了一番,做了如下的笔记,希望对你有用。背景在实际场景中,开发环境......
  • ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For det
    出现这个错误表示rabbiMQ拒绝使用普通身份验证机制拒绝登录,解决的方法很简单解决办法在rabbitMq的后台创建一个不普通的用户就好了,具体步骤如下:进入admin界面,添加一个......
  • Codeforces Round #838 (Div. 2)
    题目链接A核心思路:首先我们得清楚一个点,那么就是如果有不符合条件的数列,那么我们也只有以下两种操作:把其中一个偶数变为奇数把其中一个奇数变为偶数所以这个问题就......
  • Educational Codeforces Round 140 D
    D.Playoff题链我们观察样例或者自己想一想就可以知道这个答案一定是一段连续的数字那么我们考虑如何确定这个答案的上下界即可而且只要给出的字符串s有一个0那么我......
  • CodeForces-300#B 题解
    题意给定\(n\)个数,保证\(n\mid3\),要将这\(n\)个数分配到\(\dfrac{n}{3}\)个三元组,有\(m\)个要求\(a,b\),每个要求表示\(a,b\)要在同一个三元组里,求最后的分......
  • Docker报错:Error response from daemon: conflict: unable to remove repository refe
    解决报错内容是因为镜像被容器引用,那么删除容器在删除镜像。#查看容器dockerps-a#停止容器dockerstop***#删除容器dockerrm1c21d7ca4d79容器删除......
  • Codeforces Round 838 (Div. 2)
    B.MakeArrayGood题意:给定n个数,每次可以对其中一个数进行操作,其中,在操作数量不超过n的前提下,构造一种操作使得任意两个数中,大的数可以被小的数整除。分析:结论:所......