2011-12-16 72 views

回答

4

你不能在不同的数据上下文之间进行连接。您将不得不使用linq对象加入

var crossJoin = from a in context.TableA.AsEnumerable() 
       from b in context2.TableB.AsEnumerable() 
       select new 
       { 
        a, 
        b 
       }; 
+0

这是在单个数据上下文中。它不是像我在链接中提到的那样查询两个不同的数据上下文。 – 2011-12-16 15:39:09

+0

@Gator - 对不起,我错过了。我更新了答案 – Aducci 2011-12-16 15:45:41

1

没有实体框架查询可以跨单个上下文的边界。所以支持交叉连接,因为@Aducci在他的回复中显示,但不支持交叉上下文或跨数据库linq-to-entities查询。

0

使用EF Core 2.0和ASPNET Core 2.0。您确实可以使用此参考进行交叉连接。注意NonEquijoin示例。

https://docs.microsoft.com/en-us/dotnet/csharp/linq/perform-custom-join-operations