[C#](Linq/Lambda)加入 2 DBContext 的 2 个或更多表

发布时间: 2017/2/27 4:01:06
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我得到这样的错误︰ 指定的 LINQ 表达式包含对查询与不同的上下文相关联的引用。

var employee = new ApplicationDbContext().Employee;
var otherTable = new OtherDbContext().OtherTable;

var returnValue = (from e in employee
                        join o in otherTable on e.Id equals o.Id
                        select new
                        {
                            e.Name,
                            e.Address,
                            o.Others
                        });

任何解决方案/s? 谢谢你 !

解决方法 1:

您应实例化您 DBContext 一般并不指定台式。 示例︰

 private ApplicationDBContext db = new ApplicationDbContext();

然后选择是否你仍然要使用 LINQ 或原始 SQL。我相信你更熟悉 SQL,因为你提到连接表所以为什么不使用的吗?这里是有关教程,说明如何使用原始 SQL。

如果你仍然坚持使用 LINQ 和涉及联接,在这里是很好的借鉴。

赞助商