Сначала код Entity Framework 5 - Как "начать все сначала"?

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

есть ли способ я могу этого? Я предполагаю, что мне придется удалить таблицу __MigrationHistory или удалить ее содержимое. Но я не знаю, как лучше поступить.

1 ответов


вы должны быть в состоянии сделать следующее:

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

  • Run Add-Migration ManuallyUpdatedDatabase -IgnoreChanges. Это создает миграцию, которая полностью пуста, поэтому она не будет вносить никаких изменений в базу данных, но она гарантирует, что система знает о ручных изменениях, которые сделано. Таким образом, изменения вручную не будут включены в следующую миграцию, которую вы создадите.

  • Run Update-Database для применения пустой миграции.

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