0

В моем проекте много миграций. Если быть точным, их 35. Теперь, когда мы идем на версию 1.0, я хочу «суммировать» эти 35 миграций в один перенос для удобства управления.
Как я могу это сделать?
Как я могу создать совокупность всех этих миграций, как если бы я никогда не создавал предыдущую миграцию?Как «суммировать» миграции EF 6

Детали:

  • EF 6
  • Использование Code First
  • Автоматические Миграции: Ложные

Удаление предыдущих миграций и пытается "Add-Migration" не работает .. а также откатывание базы данных для миграции мишеней 0 ... Есть ли такой флаг, как «Игнорировать предыдущие миграции»?

+0

Вы можете вызвать Update-Database -Script -TargetMigration: XXX, который создаст SQL-скрипт миграции из текущего состояния БД для миграции XXX. Это то, что вам нужно? – Matt

+1

Я бы назвал эти «рушится» миграции. Переход от 35 к 1. Вот возможный обман, который, я думаю, правильный http://stackoverflow.com/questions/22789065/what-is-the-best-way-to-collapse-all-existing-enityt-framework- миграции, я думаю, что помимо удаления всех миграций кода, возможно, вам придется удалить историю из таблицы миграции базы данных. Но я не уверен; EF может позаботиться об этом для вас. – Will

+0

@Matt, на самом деле нет, мне нужна миграция, а не сценарий ... Мне нужен класс с таблицами создания и т. Д., Чтобы позже запустить базу данных обновлений ... – Leonardo

ответ

1
  1. Откат база данных (Update-Database -TargetMigration 0)
  2. Удалить все миграции
  3. Recompile все (очень важно !!! Затраченное о 15мин на "явная миграция в ожидании ...")
  4. Добавить новую миграцию!
Смежные вопросы