Gabriel
Gabriel

Reputation: 15

Multiple contexts with Entity Framework 6, reference entities across dbcontexts

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:

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 ?

Upvotes: 1

Views: 6668

Answers (1)

Wiktor Zychla
Wiktor Zychla

Reputation: 48230

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.

Upvotes: 2

Related Questions