The specified LINQ expression contains references to queries that are associated with different cont...

在重构过程中遇到一个LINQ错误,错误提示涉及不同查询源。原本认为是来自不同EDMX文件的表导致,但实际上是由于每次访问DbContext时创建新实例。通过StackOverflow找到解决方案,即确保DbContext在IoC容器中单例存在。使用Autofac进行注册,但问题仍未解决。最终发现泛型DbContext实例化导致两个不同实例,去掉泛型后问题解决,重构成功。
摘要由CSDN通过智能技术生成

今天在改写架构的时候,遇到这么个错误。当时单从字面意思,看上去错误是由join的两个不同的表来源不一致引起的。

image

其中的videoResult和deerpenList均来自与同一个edmx文件,所以两个表的来源不一致导致了错误的发生,这个猜想是不正确的。

正在左右为难之际,在stackoverflow上面发现了一个主题,正好解决了我的难题。这个问题的回答是这样的:

This can happen if your Context property returns a new instance every time

它的字面意思是:如果你的Context每次访问都返回一个新的实例的话,就会造成这个错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值