关闭级联删除

问题描述 投票:0回答:0

我有一个案例,我需要关闭级联删除(两个不同的模型都想要级联删除,所以需要关闭一个)。我想我是对的,但我到处都看到了很多不同的答案,所以想确认一下。

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 类开始的说法似乎很奇怪。

entity-framework entity-framework-core
© www.soinside.com 2019 - 2024. All rights reserved.