如何内部连接不同的数据的上下文表? [重复](How to inner join tables

2019-07-21 11:27发布

这个问题已经在这里有一个答案:

  • 模拟跨上下文连接- LINQ / C# 3回答

我从两个不同的数据上下文两个表。 尽管这两个表都来自同一个数据库,存在两个独立的datacontexts。

错误信息:

查询包含对不同的数据上下文定义的项目引用。

我怎样才能解决这个问题? 任何帮助表示赞赏。 谢谢。

Answer 1:

哦,你#1如何提供!

模拟跨语境加入- LINQ / C#



Answer 2:

如果你的代码不会沿着线的东西:

from a in dc1.TableA
join b in dc2.TableB on a.id equals b.id
select new { a, b }

...只是将其更改为:

from a in dc1.TableA
join b in dc1.GetTable<TableB>() on a.id equals b.id
select new { a, b }

该L2S的datacontext使用的类的属性,因此,如果您是在其他的datacontext比一个表连接到它只会拿起表,列等使用GetTable从类DEF属性和使用它,仿佛它是一部分该DC的你正在使用的查询...



Answer 3:

你不知道。 数据上下文可以对数据库的视图不一致。



Answer 4:

另一种解决方案是改变结果列表()。

var query = (from a in dc1.TableA 
            join b in dc2.TableB on a.id equals b.id 
            select new { a, b }).ToList()


Answer 5:

你为什么不只是包括在各方面必要的表?



文章来源: How to inner join tables from different Data Context? [duplicate]