实体框架:WillCascadeOnDelete(false)vs ManyToManyCascadeDeleteConvention

时间:2018-06-21 16:27:35

标签: sql-server asp.net-mvc entity-framework entity-framework-6 ef-code-first

正如我所见,WillCascadeOnDelete(false)用于防止在删除父记录时删除相关表。但是,当使用WillCascadeOnDelete(false)时,我们必须为每个实体定义它,如下所示:

modelBuilder.Entity<Card>()
    .HasRequired(c => c.Stage)
    .WithMany()
    .WillCascadeOnDelete(false);

modelBuilder.Entity<Side>()
    .HasRequired(s => s.Stage)
    .WithMany()
    .WillCascadeOnDelete(false);

另一方面,我想知道我们是否可以在不为每个实体使用流利的api的情况下解决此问题:

builder.Conventions.Remove<ManyToManyCascadeDeleteConvention>();

您能否就这些方法向我们说明?

0 个答案:

没有答案