Зачем явно запускать команды CLI вне приложений EF для обработки миграции? - PullRequest
0 голосов
/ 10 января 2020

В документации для Entity Framework говорится об использовании команд CLI миграции для создания базы данных, которая еще не существует для нашей модели EF, и синхронизации c базы данных при изменении нашей модели EF.

Почему мы должны явно запускать команды CLI вне нашего приложения для обработки миграции? Могут ли наши приложения, использующие EF, неявно обрабатывать миграцию: создать базу данных, если она не существует для нашей модели EF, и синхронизировать базу данных c при изменении нашей модели EF?

У меня был небольшой опыт работы с Hibernate раньше, и я не слышал о миграции тогда. Я могу ошибаться, но у меня сложилось впечатление, что приложения, использующие Hibernate, могут неявно обрабатывать миграцию.

1 Ответ

1 голос
/ 10 января 2020

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

См.

Некоторые приложения могут захотеть применить миграции во время выполнения во время запуска или первого запуска. Сделайте это с помощью метода Migrate (). , , ,

Предупреждение

Этот подход не для всех. Хотя это отлично подходит для приложений с локальной базой данных, большинству приложений потребуется более надежная стратегия развертывания, например, создание сценариев SQL.

Применение миграций во время выполнения

Поэтому, хотя вы обычно применяете миграции во время выполнения к своей частной базе данных разработчиков, для развертывания в общих средах это часто не лучший выбор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...