I was faced with a situation where I had two databases (one older version of the other), and I needed to integrate both into one project. Naturally, almost every name contradicted.
I created two separate edmx files for each database and put them in my own namespace for clarity. Then I edited each entity name to reflect which database it came from - (for example, the "Actions" that were in both became "v13Activities" and "v14Activities").
For operations that need to be mirrored between two databases, I wrote a wrapper containing both contexts. This made my code much less repetitive, and it had fewer synchronization issues.
Hope this approach helps someone else - it seems like this is an unclear question, and this answer was one of the best results on Google!
Update: There is another solution in EF 6.1+. You may have "conflicting" names and separate them with a simple namespace when using the "Code First From Database" parameter. I would defend this decision in the future, as the old XML.edmx style will be phased out starting from EF Core .
source share