#c# #asp.net #entity-framework #c#-4.0 #entity-framework-6
#c# #asp.net #entity-framework #c #-4.0 #entity-framework-6
Вопрос:
Среда:
EF6 — code first — C #, ASP.NET .
Я скопировал свою существующую базу данных (назовите ее Db1
), которая была сгенерирована EF6 с другим именем — Db2
.
Изменив web.config
строку подключения на Db2
, он начал работать с DB2
, и работает нормально в течение последних 6 месяцев.
Проблема:
сегодня my update-database -script
показывает a create table
для всех таблиц в базе данных, тогда как вся таблица существует, и ожидающих изменений не было.
Просто для тестирования: если я снова изменю свою web.config
строку подключения на DB1
, она не показывает ожидающих изменений, что является правильным поведением.
Что могло пойти не так?
Заранее спасибо за любую помощь.
Комментарии:
1. Проверьте таблицу истории миграций (__MigrationsHistory) ) в двух базах данных и убедитесь, что они синхронизированы.
2. Спасибо за ваш ответ. Моя таблица _MigrationsHistory в DB2 пуста, тогда как в DB1 она содержит все миграции. В прошлом я несколько раз успешно запускал update-database на своем DB2, но никогда не проверял эту таблицу. что является хорошим следующим шагом для решения этой проблемы?
3. У меня есть база данных в тесте, которая была сгенерирована EF6. Если мне нужно скопировать эту базу данных в UAT и production, могу ли я просто включить таблицу _MigrationsHistory при копировании. Делая это, я буду в один и тот же момент времени с базами данных во всех 3 местах?
4. Я подозреваю, что если вы создадите резервную копию и восстановите все таблицы, включая таблицы миграции, то EF будет относиться к ним одинаково без каких-либо сюрпризов. Я лично предпочитаю управлять БД вручную, а не миграциями, но у других может быть объяснение, почему прошлые прогоны могли либо пропустить миграции, либо были удовлетворены тем, что БД уже обновлена.
5. Спасибо за ответ StevePy В чем причина того, что вы не поддерживаете миграции? Знаете ли вы, возникнут ли какие-либо проблемы позже, если я также скопирую таблицу _MigrationsHistory? @StevePy