Рішення 3
- Видалити стан: видалити папку міграцій у вашому проекті; І.
- Видаліть таблицю __MigrationHistory у своїй базі даних (може бути в системних таблицях); Потім.
- Виконайте таку команду в консолі менеджера пакетів: Enable-Migrations -EnableAutomaticMigrations -Force.
Консоль диспетчера пакетів (PMC) Якщо використовується, Команда Remove-Migration -Force видалить міграцію незалежно від того, чи її вже було застосовано до бази даних. Контекстний клас для використання, який містить переміщення, яке потрібно видалити, це може бути ім’я або повне ім’я, включаючи простори імен.
У Entity Framework відстеження змін увімкнено за замовчуванням. Ви також можете вимкнути відстеження змін за допомогою встановлення значення false для властивості AutoDetectChangesEnabled DbContext. Якщо для цієї властивості встановлено значення true, Entity Framework підтримує стан сутностей.
Відкривши консоль диспетчера пакетів, виконайте команду enable-migrations –EnableAutomaticMigration:$true (переконайтеся, що проектом за замовчуванням є проект, у якому розташований ваш контекстний клас) і натисніть кнопку введення, як показано на зображенні нижче.
Перевірка наявності змін моделі, що очікують на розгляд. Одним із способів зробити це є використання цієї команди. Ви також можете виконати цю перевірку програмно за допомогою context.Database.HasPendingModelChanges() . Це можна використовувати для написання модульного тесту, який завершується невдачею, якщо ви забуваєте додати міграцію.