在 SQL 服务器的一个 Entity Framework 核心查询中使用多个巨大的数据库?

Use multiple huge databases in one Entity Framework Core query with SQL Server?

我想使用 1 或 2 dbcontext 在一个查询中查询来自不同数据库的多个表。我一直在寻找一些信息,但要使其完美运行似乎并不容易。

我需要同时对来自 3 或 4 个不同数据库的 5 或 6 个表进行多次查询。

Cannot use multiple DbContext instances within a single query execution message.

我读到我可以关联这 2 个数据库,但由于我的企业结构,我不能这样做,而且它不允许我这样做。

这是在 Entity Framework Core 2.2 或 3 中,我都已经尝试过了。我已经创建了数据库,所以我搭建了它们。

我有一个例子,只有 2 个数据库:

var data =
   from j in jsa.TbEmp
   join i in info.TbcEmpGral on j.fiEmp equals i.fiEmp
   where i.fiEmp == 361591
   select i.FcName.ToString() + " - " + i.fiDate.ToString();

I want to query multiple tables from different databases [on one server] in one single query

最简单的方法是为单个数据库中的所有表创建视图或同义词。 EF 将无法自动构建模型,但如果您手动创建模型,EF 将简单地将 SQL 发送到该单个数据库 ,就好像 它包含所有表和 SQL 服务器将通过同义词或视图将查询重定向到适当的对象。