Как применить отложенные явные миграции в visual studios community edition? (ASP.Net)


Я пытаюсь изменить свой код первой миграции, чтобы я мог добавить новую таблицу в БД, называемую " GunControl."Однако, когда я ввожу "Add-Migration GunControl" в менеджере пакетов, я получаю сообщение об ошибке:

" не удалось создать явную миграцию, поскольку ожидаются следующие явные миграции: [201705171404346_Questionnaire]. Примените отложенные явные миграции, прежде чем пытаться создать новую явную миграцию."

Опросные данные.МДФ-это имя by db, а GunControl наследуется от класса Questionnaire. Я искал везде в интернете, и я не могу найти способ сделать это. Большое спасибо, что уделили мне время!

1 2

1 ответ:

Это происходит потому, что у вас уже есть существующая база данных, к которой вы подключаетесь. База данных отслеживает, какие миграции были применены к ней, и когда вы запускаете Add-Migration, она сравнивает схему базы данных с вашими моделями и видит, что вы создали миграцию ранее (201705171404346_Questionnaire), которая еще не была применена к фактической базе данных. Из-за этого новая миграция не может определить, что изменилось в схеме при сравнении базы данных.

Ваши варианты являются:

  1. запустите Update-Database, чтобы применить предыдущую миграцию.
  2. удалите файл миграции 201705171404346_Questionnaire.cs и снова запустите Add-Migration, который будет содержать оба набора изменений.
  3. удалите всю базу данных и все файлы миграции, затем выполните команду Add-Migration для создания исходной схемы.