EF Core 中的 .WillCascadeOnDelete(false) 等价物是什么?
What is the equivalent of .WillCascadeOnDelete(false) in EF Core?
EF Core 中的 .WillCascadeOnDelete(false) 等价于什么?
modelBuilder.Entity<ProductTransactionHistoryClassImport>()
.HasMany(e => e.ProductTransactionHistoryClassDetailImports)
.WithOne(e => e.ProductTransactionHistoryClassImport)
.WillCascadeOnDelete(false);
OnDelete 方法将 DeleteBehavior 枚举作为参数:
Cascade
- 应删除家属
Restrict
- 家属不受影响
SetNull
- 依赖行中的外键值应更新为 NULL
modelBuilder.Entity<ProductTransactionHistoryClassImport>()
.HasMany(e => e.ProductTransactionHistoryClassDetailImports)
.WithOne(e => e.ProductTransactionHistoryClassImport)
.OnDelete(DeleteBehavior.SetNull);
代码在 DbContext Class 的 OnModelCreating 方法 (ModelBuilder modelBuilder) 中 Class 并且可以按如下方式使用:
.OnDelete(DeleteBehavior.Cascade);
或
.OnDelete(DeleteBehavior.Restrict);
或
.OnDelete(DeleteBehavior.NoAction)
EF Core 中的 .WillCascadeOnDelete(false) 等价于什么?
modelBuilder.Entity<ProductTransactionHistoryClassImport>()
.HasMany(e => e.ProductTransactionHistoryClassDetailImports)
.WithOne(e => e.ProductTransactionHistoryClassImport)
.WillCascadeOnDelete(false);
OnDelete 方法将 DeleteBehavior 枚举作为参数:
Cascade
- 应删除家属
Restrict
- 家属不受影响
SetNull
- 依赖行中的外键值应更新为 NULL
modelBuilder.Entity<ProductTransactionHistoryClassImport>()
.HasMany(e => e.ProductTransactionHistoryClassDetailImports)
.WithOne(e => e.ProductTransactionHistoryClassImport)
.OnDelete(DeleteBehavior.SetNull);
代码在 DbContext Class 的 OnModelCreating 方法 (ModelBuilder modelBuilder) 中 Class 并且可以按如下方式使用:
.OnDelete(DeleteBehavior.Cascade);
或
.OnDelete(DeleteBehavior.Restrict);
或
.OnDelete(DeleteBehavior.NoAction)