是否可以使用 LINQ 跨不同数据库执行连接?
Posted
技术标签:
【中文标题】是否可以使用 LINQ 跨不同数据库执行连接?【英文标题】:Is it possible to perform joins across different databases using LINQ? 【发布时间】:2010-11-25 16:16:24 【问题描述】:是否可以使用 LINQ 跨不同的数据库执行连接?如果是那怎么办?
【问题讨论】:
【参考方案1】:如果数据库在同一台服务器上,您可以创建视图(以及 3 部分命名),以便可以从一个数据库中查询所有表。
如果数据库位于不同的服务器上,您可以使用链接服务器和视图(以及 4 部分命名),以便可以从一个数据库中查询所有表。
【讨论】:
+1 - 这是我的首选答案,也是我在紧急情况下使用过几次的技术 :) 这确实应该被标记为正确答案。您立即使用当前接受的答案无缘无故地管理多个上下文/模型连接字符串和更复杂的 linq 查询。 表格属性也可以使用3部分命名。【参考方案2】:调用.ToList()是在查询db中的所有记录,所以如果表中有很多记录的话会吃很多内存。
或者试试这个The specified LINQ expression contains references to queries that are associated with different contexts。
【讨论】:
有更多代表,you will be able to flag duplicate questions like this,并提到诸如 cmets 中的性能注意事项等旁注。在此之前,发布链接或评论作为答案并不理想,它们通常会被删除。 我应该说这是一个重复的问题,对吧?谢谢!以上是关于是否可以使用 LINQ 跨不同数据库执行连接?的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在同一集群中的两个不同 AWS Redshift 数据库之间运行连接?