在FluentAPI-EF核心中定义“属于”关系

时间:2019-11-13 02:08:55

标签: c# entity-framework-core ef-fluent-api

我有2张桌子,如下所示: Table design

我想在实体框架核心项目中成为这些东西:

  1. 用户不必是 TeamMember
  2. 每个 TeamMember 都是用户
  3. 当我删除用户时,必须删除 TeamMember
  4. 当我删除 TeamMember 时,用户必须保持原样
  5. TeamMember 的主键 User 表的外键

任何可以解释我如何使用FluentAPI方法实现这一目标的人,我似乎都找不到正确的方法,因为我的DeleteBehaviour似乎不起作用。

1 个答案:

答案 0 :(得分:0)

尝试此操作,这将在删除TeamMember时删除User

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<TeamMember>()
        .HasOne(b => b.User)
        .WithOne(TeamMember)
        .IsRequired()
        .OnDelete(DeleteBehavior.Cascade);
}