Мне нужна помощь, чтобы прояснить, как EF Code First Migrations работает на производственной машине. У меня есть некоторые классы сущностей и класс, основанный на DbContext, для доступа к объектам. Теперь я хочу выполнить следующие действия:
- Когда мое приложение запускается, оно должно создавать базу данных, если база данных не существует;
- тогда схема базы данных должна быть скорректирована с учетом модели;
- Если база данных была создана только сейчас, я хочу создать некоторые индексы,
- также, если база данных была создана только сейчас, она должна быть засеяна некоторыми исходными данными;
- все эти вещи должны выполняться автоматически, без каких-либо команд NUGET или внешних инструментов.
Я прочитал несколько статей о миграции, но они сосредоточены главным образом на использовании NUGET или чистых автоматических обновлениях баз данных во время выполнения (через MigrateDatabaseToLatestVersion
). Я знаю класс DbMigration
, но я не могу понять, как склеить стратегию MigrateDatabaseToLatestVersion
и DbMigration
.
UPDATE.
На самом деле, я не могу использовать NUGET в проекте, и мне нужно сделать миграцию "вручную".