2013-11-01 5 views
2

Я думал, что понял, когда отключил AutomaticMigrations.Цикл Add-Migration Update-Database

I Update-Database then Добавить новое имя столбца в класс DAL.

Затем выполнить Add-Migration

Но я зацикливание бессмыслицы.

Я выполняю обновление базы данных и обрабатываю ... Применение явных миграций: [список текущих миграций].

затем эта строка для каждой миграции. Применение явной миграции: [id]

Тогда это предупреждает меня, что модель НЕ обновлена. Так я исполняю Add-Migration и получить ошибку ... Невозможно создать явную миграцию, поскольку следующие явные миграции находятся на рассмотрении: [тот же список, я только что видел применен]

WTF?

+0

Я решил это с помощью следующих шагов. 1) Удалите файл базы данных, который обновляет проект DAL. 2) Удалите оскорбительную миграцию. // Комментируем стол или столбец. 3) выполнить обновление базы данных. 4) Раскомментирование изменений. 5) Add-Migration 6) Обновление базы данных 7) Проверка времени выполнения. 8) Регистрация – cbuteau

+0

+1 «... пойман в петле абсурда». Это созвучно мне. – Jeff

ответ

1

Я решил это с помощью следующих шагов.

  1. Удалить файл dataabase, который обновляет проект DAL.
  2. Исключить миграцию. // Комментируем стол или столбец.
  3. Выполнение обновления базы данных.
  4. Uncomment меняется.
  5. Add-Migration
  6. Update-Database
  7. время выполнения проверки.
  8. Заезд

Удачи, если вы столкнулись с этой проблемой.

У меня возникли проблемы, когда я добавил код, который явно назвал инициализатор, чтобы ускорить время запуска. Тогда всякий раз, когда я делал базу данных обновлений ... он использовал бы мой контекстный класс, попытался бы сделать инициализатор и потерпеть неудачу.

Код-Первый - это хороший шаг в правильном направлении, но у него есть все, чтобы быть осторожными.

Смежные вопросы