我有一个案例,我需要关闭级联删除(两个不同的模型都想要级联删除,所以需要关闭一个)。我想我是对的,但我到处都看到了很多不同的答案,所以想确认一下。
public class Signup
{
public required User User { get; set; }
// lots of other properties
}
public class User
{
public required ICollection<Signup> Signups { get; set; }
// lots of other properties
}
public class SignupConfiguration : IEntityTypeConfiguration<Signup>
{
/// <inheritdoc />
public void Configure(EntityTypeBuilder<Signup> builder)
{
builder.HasOne(s => s.User).WithMany(u => u.Signups).OnDelete(DeleteBehavior.NoAction);
}
}
这是告诉 EF 在删除 User 对象时不应级联其子 Signup 对象的正确方法吗?这有效(我认为)。但我想确保这是执行此操作的正确方法。
此外,我觉得这是从子 Signup 类而不是父 User 类开始的说法似乎很奇怪。