EF Core 7如何在SingleOrDefault()中同时过滤影子属性与其他属性?
EF Core同时通过影子属性与实体属性过滤的问题解决
你遇到的错误是因为第二个条件中使用了赋值运算符=而非相等比较运算符==,赋值操作返回的是被赋值的long类型值,而&&运算符要求两边的操作数都是bool类型,因此出现类型不匹配的错误。
修正后的代码如下:
Proyecto? miProyecto = await _contexto.Proyectos .FirstOrDefaultAsync(x => (EF.Property<long>(x, "IDCategoriaFactura") == 2) && (x.NumeroProyecto == paramLgNumeroProyecto));
只需将x.NumeroProyecto = paramLgNumeroProyecto中的单等号=改为双等号==,第二个条件就会返回bool类型的比较结果,此时两个bool条件就能通过&&正常组合,实现同时按影子属性和实体属性过滤的需求。
内容的提问来源于stack exchange,提问作者Álvaro García
相关产品推荐
相关产品推荐

