2015-08-06 3 views
1

У меня есть веб-приложение ASP.NET MVC, работающее с Entity Framework, и у меня есть та же схема базы данных в двух разных системах баз данных (Oracle и MySQL). База данных одинакова в Oracle и MySQL. Приложение должно работать с этими двумя провайдерами, потому что у меня есть два разных сценария.Entity Framework с несколькими моделями (разные поставщики)

Когда я хочу работать в сценарии Oracle, я должен вручную изменить Web.Config, чтобы поместить правильный ConnectionString, правильный провайдер для проверки подлинности участника, roleManager ... и мне нужно удалить модель базы данных (edmx файл) и воссоздать его для Oracle.

Когда я хочу изменить работу с Oracle на MySQL, у меня такая же проблема. Я должен изменить web.config, чтобы поставить правильных поставщиков и строку подключения, и мне нужно воссоздать модель базы данных (файл edmx) для модели MySQL.

Есть ли способ избежать этой тяжелой и скучной задачи каждый раз, когда я хочу изменить базу данных?

+0

Просто создайте файл 2 edmx. Вот это – dan

+0

Это не очень хороший вариант, я думаю, потому что, если у меня есть два edmx (один для oracle и один для mysql) с той же схемой базы данных (те же таблицы и поля), у меня будут ошибки компиляции из-за наличия классов с одинаковым именем , – JuanDYB

ответ

1

В принципе можно создать несколько Web.config и автоматически выбрать правильный вариант в зависимости от текущей используемой среды.

Дополнительную информацию можно найти here.

+0

Да, это решение помогает мне, но большая проблема, с которой я столкнулась, - это воссоздать файл edmx для разных поставщиков (удалить файл edmx и создать его для требуемого провайдера). – JuanDYB

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