EF core не поддерживает автоматическую миграцию. Так что вам придется делать это вручную.
С точки зрения автоматической миграции как функции, мы не планируем внедрять ее в EF Core, так какопыт показывает, что переходы на основе кода являются более управляемым подходом.
Полный текст статьи можно прочитать здесь: Не реализовывать автоматические миграции
Есть 2методы в EF Core, связанные с миграцией. Database.Migrate()
и Database.EnsureCreated()
. Ни одна из них не является полной миграцией.
Migrate()
не добавляет и не создает миграцию. Он только проверяет, существуют ли какие-либо непримененные миграции или нет. Если да, то обновляет базу данных на их основе.
EnsureCreated()
создает базу данных на основе моделей в проекте. Но это не делает это путем миграции. На самом деле никаких миграций не требуется с помощью этого метода. Недостатком этого метода является то, что созданная им база данных не может быть обновлена в будущем при каких-либо миграциях. Не звоните EnsureCreated()
до Migrate()
. EnsureCreated()
обходит Миграции для создания схемы, что приводит к сбою Migrate()
.
Вывод: сначала добавьте миграцию, а затем обновите базу данных (Database.Migrate ())