У меня есть локальный экземпляр базы данных, которую я недавно создал с помощью DbContext.Database.Create()
, поэтому таблица __MigrationHistory
существует с InitalCreate
запись, совпадающая с кодом на данный момент.
Однако некоторые миграции на основе кода существуют в папке «Миграции». Они будут выполняться в наших средах разработки и промежуточной среды, чтобы привести эти базы данных в соответствие с кодом. Однако мне не нужно применять их локально, поскольку я создал базу данных, используя текущий код.
Теперь мне нужно внести изменения в модель и создать соответствующую миграцию. Но когда я запускаю Add-Migration TestMigration
, я получаю следующую ошибку
Unable to generate an explicit migration because the following explicit
migrations are pending:
[201203271113060_AddTableX,
201203290856574_AlterColumnY]
Apply the pending explicit migrations before attempting to generate
a new explicit migration.
Что мне делать в этом случае? Я не могу указать инструмент Add-Migration на другую среду, потому что не гарантируется, что версия соответствует той, что у меня есть локально. Мне нужна миграция, которая соответствует только тем изменениям, которые я сделал.
Кажется, у меня есть несколько вариантов, но ни один из них не идеален:
Есть ли у кого-нибудь какие-либо предложения о том, как с этим справиться?