无法克服EF6 CF中INSERT / DELETE的外键约束

时间:2015-03-25 10:13:32

标签: entity-framework ef-code-first foreign-key-relationship

严重问题 - 我无法通过。

我有两个模特。

class letter
{
public Guid id {get;set;}
public String subject  {get;set;}
}

class sended_letter
{
public Guid id {get;set;}
public Guid letterID{get;set;}
public DateTime sended{get;set;}
}

我应该如何设置这些模型,以实现下一步:

  1. 一对一关系(由BL统治)

  2. sended_letter 可以免费删除

  3. 删除时
  4. 信件将删除相关的sended_letter。如果不可能 - 那么就不需要

  5. sended_letter 始终使用 letterID

  6. 链接到信件
  7. 不要更改信件实体。信对 sended_letter

  8. 一无所知

    我无法完成它。

    EF CF始终在 sended_letter 上创建外键约束 - 我无法删除 sended_letter 记录。

    为什么?!?!?!?!?!

    我可以放弃FK CONSTRAINT,但它不对。

    我尝试过使用

    modelBuilder.Entity<letter_sended>().HasRequired(x => x.letter).WithRequiredPrincipal();
    

    但是没有。

    我该怎么办?!

1 个答案:

答案 0 :(得分:1)

根据您的要求,我会选择

modelBuilder.Entity<letter_sended>()
            .HasRequired(x => x.letter)
            .WithOptional(x => x.letter_sended)
            .WillCascadeOnDelete(true);

请参阅https://msdn.microsoft.com/en-us/data/jj591620.aspx