Снимок базовой модели EF не синхронизирован между переносом и обновлением - PullRequest
1 голос
/ 22 апреля 2019

Я использую EF Core и миграцию кода.Насколько я понимаю, файл снимка должен быть «целевой базой данных» для создания будущих файлов миграции.

Ситуация:

1) Я сделал миграцию надстройки, чтобы создать миграцию после некоторых изменений.Это обновило снимок модели, который, как мне кажется, является ожидаемым поведением.
2) Затем я понял, что понял, что неправильно набрал одно из своих полей.Вместо строки это должен был быть байт []. 3) Я внес изменения в классы. 4) Я снова сделал add -igration.

Теперь DataSnapshot, кажется, не синхронизирован, потому что новое дополнение-миграция не включает это изменение файла типа.

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

Я знаю, что в EF6 это был прекрасный способ сделать это, потому что он всегда предназначался для изменений в реальной базе данных, а не в этом файле снимка.Поэтому достаточно просто удалить файл изменений и переделать файл изменений.

Это второй раз, когда я должен был внести некоторые изменения в файл миграции после того, как понял, что существует проблема (без фактического запуска обновления для чего-либо), и оба раза были просто невероятными усилиями, чтобы попытаться исправитьпроблема без уничтожения всех моих предыдущих миграций и начала заново.

Мой вопрос: как мне теперь с этим справиться?Должен ли я удалять как файл изменений, так и файл моментального снимка каждый раз, когда я возвращаюсь в миграцию добавления?

Я действительно обеспокоен тем, что мне чего-то не хватает здесь, потому что теперь я должен убедиться, что файл изменений не только правильный, но и текущий снимок также корректен, и если этот снимок когда-либо выходит изсинхронизировать, затем я должен пойти и вручную обновить его до

...