获取错误"Delegate 'System.Func

本文关键字:EntityType int boolean Func 取错误 quot Delegate 获取 System | 更新日期: 2023-09-27 18:15:35

我试图在我的实体框架上下文上做一个非常愚蠢的基本LINQ查询。它是这样的:

var query = from e in context.Entity1s.Include("Entity2")
            where e.Id == someVar.E1Id
            select e;

正如你所看到的,这是一个愚蠢的、基本的、从教科书中复制粘贴出来的查询。但是Visual Studio在'where'关键字上放了一个红色的弯弯曲曲的下划线,我得到了一个构建错误,看起来像:

委托' System.Func<Entity1, int, bool> '不接受1个参数

我看不懂。有人能解释一下这是怎么回事吗?

获取错误"Delegate 'System.Func<EntityType,int, boolean

经过多次半随机的修补,我解决了这个问题。我不知道为什么我现在必须这样做,当我从来没有这样做过,我不完全确定为什么在地球上修复它,或者它与我得到的错误有什么关系,但我像这样解决了它:

//          --->Added This<--
var query = from Entity1 e in context.Entity1s.Include("Entity2")
           where e.Id == someVar.E1Id
          select e;

e转换为强声明类型,而不是像我应该能够的那样让Visual Studio在编译时推断其类型。哦。没什么大不了的。我没有理由不能声明e的类型。

它仍然激怒了我,我没有真正解决这个问题。我是说,我成功了,但是为什么?为什么我所做的会产生影响?尤其是当它曾经不重要的时候?

我将选择我的答案作为正确的答案,因为它解决了问题,但如果有人有关于"为什么它有效"方面的信息,请留下评论。我相信我不是唯一一个想要了解更多的人。