无法共享表没有匹配的主键

时间:2014-11-28 02:20:41

标签: asp.net

实体类型'个人资料'和国家'不能共享表'国家' ,因为它们不在同一类型层次结构中,或者没有有效的一对一外键关系,并且它们之间具有匹配的主键。

1 个答案:

答案 0 :(得分:0)

尝试删除

public int? CountryID { get; set; }
从UserProfile

看起来像这样:

public class UserProfile
{
    [Key]
    public int UserID { get; set; }

    public virtual Country Country { get; set; }
}

public class Country
{
    public Country()
    {
        Profiles = new HashSet<UserProfile>();
    }

    [Key]
    public int CountryID { get; set; }


    public ICollection<UserProfile> Profiles { get; set; }
}

另一件事:你有ICollection<Profile>而不是ICollection<UserProfile>