Multiple contexts with Entity Framework 6, reference entities across dbcontexts

五迷三道 提交于 2019-12-01 11:12:18

问题


I am writing two MVC5 (with EF6 and code-first) web apps using generic UnitOfWork that gets the dbContext injected by Unity.

We are required to have two databases (Main Database and Project Specific DB) and have a reference between the two.

Here's an example:

  • in the main context I have an entity Employee
  • in the project context I have an entity Department

I need to create Departments in my Project that group and organize Employees from Main.

Can I have...

ICollection<Employee> Employees { get; set; } in the Project DB's Department Entity ? (the relationship between Employees and Departments is many-to-many)

How would you go about having something like this done ?


回答1:


The easiest approach would be to link tables from one database to the other so that this is the database server which handles two physical databases as one virtual database.

Then, in EF, you have just one context with tables from both databases and querying/joins etc. works correctly.

http://msdn.microsoft.com/en-us/library/ff772782.aspx

Otherwise, linking two databases in the application layer with EF and two contexts sounds impossible.



来源:https://stackoverflow.com/questions/22534560/multiple-contexts-with-entity-framework-6-reference-entities-across-dbcontexts

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!