Я использую первые миграции кода. Есть ли способ отобразить ожидающие изменения модели в консоли диспетчера пакетов, прежде чем я подниму новую миграцию?
Первые изменения кода - как отображать ожидающие изменения модели?
Ответ 1
Я не знаю способа увидеть ожидающие изменения в модели перед созданием леса миграции, но я не могу придумать причину, по которой не нужно переносить миграцию с помощью Add-Migration
чтобы ожидающие изменения можно было просмотреть в файле миграции., Нет необходимости применять эти изменения к базе данных, и миграция с помощью леса всегда может быть удалена.
После переноса в леса, если вы используете Update-Database -Script
сущностей Update-Database -Script
генерируется сценарий SQL, а не выполняются изменения напрямую.
Вы можете получить помощь по EntityFramework в менеджере пакетов, используя get-help EntityFramework
И вы можете получить помощь по команде Update-Database, используя следующее:
get-help Update-Database
get-help Update-Database -detailed
get-help Update-Database -full
Ответ 2
В принятом ответе рассказывается, как получить SQL для изменения модели с незакрепленной картой перед применением к базе данных.
Первоначальный вопрос, рассматриваемый моделью, изменяет предварительные леса (т.е. изменения в модели с момента последней "добавления-миграции" перед запуском следующей "add-migration"...)
В этот ответ я просто скажу: эшафот в любом случае, который дает вам ваш предварительный просмотр. Под этим я подразумеваю, запустите "предварительный просмотр добавления-миграции" или что-то подобное, он создаст миграцию подмостей с изменениями модели, которые вас интересуют. Затем просто удалите, если из вашего решения...
Дело в том, что нет необходимости в "предварительном просмотре", когда на самом деле "делать" можно быстро отменить. Некоторым может показаться, что удаление модифицированной версии для миграции из раздела миграции решения может сломать что-то, но нет, это очень хорошо поддерживается.
Вы даже можете проверить эшафот, а затем создать sql script, как подсказывает Колин в своем ответе, чтобы получить полный SQL. На данный момент ничего не сделано, поэтому удалите версию миграции, если хотите.