Linq to sql 使用linq查询同一服务器上的数据库

Linq to sql 使用linq查询同一服务器上的数据库,linq-to-sql,inner-join,Linq To Sql,Inner Join,在普通sql中,我可以对不同数据库中的表进行连接,只要它们位于同一服务器或链接服务器上。在林克,我不知道该怎么做。这可能吗?例如,如果我有一个名为db1的数据库和另一个名为db2的数据库。db1有一个名为people的表,db2有一个名为address的表,我可以这样做 select a.addressline1, p.firstname from db1.dbo.people p inner join db2.dbo.address a on p.peopleid = a.peopleid

在普通sql中,我可以对不同数据库中的表进行连接,只要它们位于同一服务器或链接服务器上。在林克,我不知道该怎么做。这可能吗?例如,如果我有一个名为db1的数据库和另一个名为db2的数据库。db1有一个名为people的表,db2有一个名为address的表,我可以这样做

select a.addressline1, p.firstname
from db1.dbo.people p
inner join db2.dbo.address a on p.peopleid = a.peopleid

这对linq有可能吗?谢谢。

就我个人而言,当我需要LINQ到SQL的连接时,我只需要在SQL中创建它们。使用LINQ编写它们相当困难,但使用LINQ中的.JOIN选择器应该是可能的


另一种编写LINQ查询的方法是解释的

不直接支持单个上下文下的多个数据库。在第一个数据库中创建指向第二个数据库中的表的视图,并将实体映射到这些视图

本文还展示了这一点,以及手动编辑datasource属性的一个替代选项:

尝试使用db1。@您的查询


HTH

是的,这似乎是实现这一目标最直接的方法。谢谢