Миграция EF - существующая БД, но хочу развернуть с нуля
-
11-12-2019 - |
Вопрос
У меня есть существующая dev db с схемой и данными.Я создал классы, используя утилиту Microsoft (классы CodeFirst).Затем я позволил миграциям.
Теперь я озадачен по поводу поведения -GignoRechanges.Если первоначальная миграция не работает () и NO DOWN () логика, что произойдет, когда я развернут в PROD DB?
EF просто игнорирует все миграции и просто построить с нуля прямо из модели?
Если я не ставлю в -OnoMeChanges, там есть логика UP () и down ().Но при обновлении-базе данных он бросает исключение о таблице с тем же именем уже существующим.
Я использую EF 5 RC.
Решение
IgnoreChanges
предназначен для сценариев, в которых у вас есть существующее приложение (как dev, так и prod), и вы хотите начать использовать миграции.IgnoreChanges
будет Упростите добавление начальной миграции к существующей базе данных.Если вы находитесь в сценарии, где не существует производственная база данных, вы не можете использовать игнорировать изменения.
Простой опция для вашего дела - это создание объектов из существующей базы данных и продолжает работать над другой базой данных, созданной вашей миграцией из этих объектов, поскольку вам нужно создание таблицы для всех этих объектов в методе Up
(и методом GeneracodicCode).>