在实体框架中调用Expression.Invoke?
时间:2020-03-05 18:39:31 来源:igfitidea点击:
实体框架不支持Expression.Invoke运算符。尝试使用它时,我们会收到以下异常:
"The LINQ expression node type 'Invoke' is not supported in LINQ to Entities.
有人针对此缺少的功能找到解决方法吗?我想在实体框架上下文中使用此处详细介绍的PredicateBuilder。
编辑1 @marxidad我喜欢建议,但这确实使我感到困惑。我们可以针对我们提出的解决方案提供更多建议吗?
编辑2 @marxidad感谢澄清。
解决方案
回答
实体框架将LINQ表达式转换为实体命令树,并且在其中仅支持其规范功能。我们必须将命令树与规范函数一起使用才能执行PredicateBuilder之类的操作。
回答
PredicateBuilder和LINQKit现在支持实体框架。
抱歉,伙计们,因为没有早点这样做!