Как безопасно удалить историю миграции базы данных Compact SQL - PullRequest
0 голосов
/ 13 июня 2019

Я разрабатываю приложение WPF, использующее базу данных SQL Server Compact 4.0.В ходе этого проекта мы внесли несколько изменений в структуру модели, используя ряд основанных на коде, а затем автоматических миграций.Все они хранятся в таблице _MigrationHistory и представлены несколькими классами миграции.

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

Какие части проекта необходимо удалить и как это сделать безопасно?

1 Ответ

0 голосов
/ 13 июня 2019

Сначала убедитесь, что резервное копирование вашего проекта и резервное копирование базы данных.На случай, если что-то пойдет не так.

Если ваш проект настроен с использованием кода структуры сущности, сначала ,

В проекте вы можете удалить все файлы миграции вПапка «Миграции», за исключением «MigrationConfiguration.cs», которая содержится в проекте, использующем сущностную инфраструктуру.

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

Перестройте решение и создайте новую миграцию, введя команду в консоли диспетчера пакетов «add -igration»и укажите имя.Это создаст новую миграцию для создания базы данных для всех ваших первых моделей кода.Если сгенерированный файл миграции выглядит правильно, запустите «update-database» в менеджере пакетов, чтобы применить миграцию к вашей пустой базе данных.

...