在EF Code First中生成外键时出现问题-无法确定关联的主要结尾

时间:2018-10-24 14:55:06

标签: entity-framework ef-code-first

我正在尝试在包含以下表关系的新数据库上启用迁移: relationship

其中 HolderID 可以为NULL。运行 enable-migrations 会显示错误消息“ 无法确定关联的主要目的

我的2个课程如下:

public class Competitor
{
    [Key]
    public int ID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string FullName { get { return string.Format("{0} {1}", FirstName, LastName); } }

    public virtual Championship Championship { get; set; }
}

public class Championship
{
    [Key]
    public int ID { get; set; }
    public string Name { get; set; }
    public int? HolderID { get; set; }

    [ForeignKey("HolderID")]
    public virtual Competitor Holder { get; set; }
}

我不明白我该如何纠正我的模型以反映所需的数据库模式结构。如果可能,我宁愿使用注释而不是流利的api。

谢谢。

1 个答案:

答案 0 :(得分:0)

public virtual Championship Championship { get; set; }

需要

public virtual ICollection<Championship> Championships { get; set; }