Мое решение этой проблемы, возникшее с использованием ASP.NET Core 2.0 и EF Core 2.0, состояло в следующем:
update-database
в консоли управления пакетами (PMC) до создать базу данных (это приведет к тому, что «Введение ограничения FOREIGN KEY ... может вызвать циклы или несколько каскадных путей»). script-migration -Idempotent
в PMC, чтобы создать скрипт, который можно запустить независимо из существующих таблиц / ограничений ON DELETE CASCADE
и замените на ON DELETE NO ACTION
Теперь ваши миграции должны быть обновлены, а каскадные удаления не должны возникать.
Слишком плохо, что я не смог найти способ сделать это в Entity Framework Core 2.0.
Удачи!