0

Мы используем Entity Framework 4.3 Code First. У нас есть три базы данных. Для каждой базы данных у нас есть один DbContext. В первой базе данных есть несколько устаревших таблиц/sql. В целом, прибл. 70-80 таблиц/объектов.Entity Framework 4.3 объединить несколько баз данных/контекст

В будущем мы хотим использовать EF 4.3 Migration.

  • Можем ли мы объединить все три базы данных в один и сохранить наши три класса DbContext?
  • Лучше также объединить классы DbContext?
  • Может ли EF 4.3 справиться с этим?

ответ

3

Если вы хотите использовать 3 типа контекста, вы все равно должны использовать 3 базы данных. Переходы базы данных зависят от типа контекста, и миграция для трех типов контекстов не будет работать в одной базе данных (или это вызовет массу проблем, включая полную ручную обработку кода миграции). В качестве альтернативы вы можете объединить все свои базы данных в единую базу данных, которую вы также должны объединить, - это тип контекста для одного. Выбор остается за вами.

+0

Могу ли я добавить четвертый контекст для миграции? Один «Супер» -контекст со всеми таблицами/DbSets для миграции и тремя контекстами для доступа к данным в приложении. – LuckyStrike

+0

Он должен работать, но в этом случае нет причин иметь дополнительные три контекста. Это будет только более склонным к ошибкам поддерживать как основной контекст, так и другие контексты. –

+0

Спасибо за ваш ответ. Есть ли проблемы с производительностью с 70-80 (или более) entites/tables? Поэтому я хочу сохранить три контекстных класса. – LuckyStrike

Смежные вопросы