指定的 LINQ 表达式包含对与不同上下文关联的查询的引用

发布于 2024-10-08 13:17:46 字数 711 浏览 1 评论 0原文

我在尝试连接查询中的多个表时遇到错误:

指定的 LINQ 表达式包含对与不同上下文关联的查询的引用

这很令人困惑,因为它看起来像是我正在使用查询中的不同上下文,但我不是:

public static IQueryable<Company> GetAll(bool supportsMMAT)
            {
                return from c in Context.Companies
                            join v in Context.Vehicles on c.CompanyIdNumber equals v.CompanyIdNumber
                            join mt in Context.ModemTypes on v.ModemTypeId equals mt.Id
                            where !c.CompanyShutOff
                                && (!supportsMMAT || mt.Model == "MMAT")
                            select c;
            }

有什么想法吗?我正在使用 EF4 CTP5 代码优先方法,如果这有什么区别的话......

I'm getting an error when trying to join against multiple tables in a query:

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

It's confusing because it makes it seem like I'm using different contexts within the query but I'm not:

public static IQueryable<Company> GetAll(bool supportsMMAT)
            {
                return from c in Context.Companies
                            join v in Context.Vehicles on c.CompanyIdNumber equals v.CompanyIdNumber
                            join mt in Context.ModemTypes on v.ModemTypeId equals mt.Id
                            where !c.CompanyShutOff
                                && (!supportsMMAT || mt.Model == "MMAT")
                            select c;
            }

Any ideas? I'm using the EF4 CTP5 code first approach, if that makes any difference...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

皓月长歌 2024-10-15 13:17:46

如果您的 Context 属性每次都返回一个新实例,则可能会发生这种情况。

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文