对于实体框架,全局禁用对表的级联删除

Mic*_*ves 6 c# entity-framework cascading-deletes

寻找Entity Framework级联删除的一些帮助.我们最初有全局级联删除禁用

modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>();
modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
Run Code Online (Sandbox Code Playgroud)

我们现在想要重新启用它.但问题是,在创建迁移时,我们得到此错误"可能导致循环或多个级联路径".

使用流畅的API工作的解决方案创建..

modelBuilder.Entity<Campus>()
            .HasRequired(c => c.Institution)
            .WithMany()
            .WillCascadeOnDelete(false);
Run Code Online (Sandbox Code Playgroud)

然而,由于InstitutionId无处不在,机构会导致多个问题.我想避免不得不通过每个选项并逐个忽略它们.是否可以停止对Institution表中所有关系的级联删除?

机构永远不会被删除,所以我们不介意是否没有级联删除.

谢谢