“ LINQ to Entities不支持LINQ表达式节点类型'Invoke'”-烦死了!

“ LINQ to Entities不支持LINQ表达式节点类型'Invoke'”-烦死了!,第1张

“ LINQ to Entities不支持LINQ表达式节点类型'Invoke'”-烦死了!

您正在尝试在…中传递任意.NET函数。实体框架如何希望将其转换为SQL?您可以将其改为取一个

expression<Func<int,bool>>
,然后
Where
从中构建子句,尽管这并不是 特别
容易,因为您需要使用其他参数表达式重写表达式(即替换原始表达式中的任何参数表达式)表示的树
u.RelationTypeId
)。

老实说,为了仅

u.RelationTypeId
在用于创建表达式树的lambda表达式中指定要传递到方法中,最好还是使用:

public IEnumerable<UserBandRelation> GetBandRelationsByUser(    expression<Func<UsersBand, bool>> predicate){    using (var ctx = new OpenGroovesEntities())    {        var relations = ctx.UsersBands.Where(predicate);        // mapping, other stuff, back to business layer        return relations.ToList();    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5005473.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存