Я работаю над проектом, который может в итоге иметь несколько версий/вариантов пользовательского интерфейса, но до сих пор у меня есть два подпроекта в моем веб-интерфейсе с веб-интерфейсом ASP.NET MVC. Сервисный проект - это место, где у меня есть мой контекст базы данных и определенные модели.
Моя цель - иметь минимальные или, возможно, ссылки на специальный код EF в моем веб-проекте. Я хочу, чтобы он был независимым, поэтому, когда я переключаю DLL с помощью бэкэнда службы (от SQL Server до SQL или MySQL), я не должен вносить несколько изменений в свой проект MVC.
Вот как это выглядит:
Мои вопросы: - Пока я не нашел примера использования Database.SetInitializer в другом месте, кроме Global.asax. Я хотел бы добавить воссоздание базы данных, если модель изменилась в моем классе factory, например, в классе DatabaseContextProvider или в классе сервиса, который извлекает данные из контекста и предоставляет его в пользовательский интерфейс с DTO. Есть ли недостатки в этом месте? - Я хотел бы, чтобы контекст connectionString настраивался с помощью файла Properties/Settings.settings - это разумно?