8

我第一次尝试使用 MVC4 并在尝试创建控制器时收到以下错误?有人可以引导我朝着正确的方向前进吗?


微软视觉工作室

System.Data.Entity.Edm.EdmAssociationEnd: : 多重性在关系“PropertyData_DNISData”中的角色“PropertyData_DNISData_Target”中无效。因为从属角色属性不是关键属性,所以从属角色的多重性的上限必须是“*”。

public class PropertyData
{
    [Key]
    public virtual string PropertyID { get; set; }

    [ForeignKey ("DNISData")]
    public virtual string DNIS { get; set; }

    public virtual string PropertyName { get; set; }
    public virtual string PropertyGreeting { get; set; }
    public virtual string PropertyOperator { get; set; }
    public virtual string InvalidEntryPrompt { get; set; }
    public virtual string NoEntryPrompt { get; set; }
    public virtual string Comment { get; set; }
    public virtual DNISData DNISData { get; set; }

}

public class DNISData
{
    [Key]
    public virtual string DNIS { get; set; }
    [ForeignKey("PropertyData")]
    public string PropertyID { get; set; }
    public virtual string VDN { get; set; }
    public virtual string PropertyGreeting { get; set; }
    public virtual string Comment { get; set; }
    public virtual PropertyData PropertyData { get; set; }
}

public class DigitData
{
    [ForeignKey ("DNISData")]
    [Key]
    public virtual string DNIS { get; set; }
    [Key]
    public virtual string Digit { get; set; }
    public virtual string InvalidEntryPrompt { get; set; }
    public virtual DNISData DNISData { get; set; }
}
4

1 回答 1

2

PropertyData 和 DNISData 之间存在一对一的关系。这只能通过 EntityFramework 中的共享主键来完成。

这个问题可以为您提供您正在寻找的答案:

如何使用 Entity Framework 4 Code First (POCO) 声明一对一关系

于 2013-10-09T16:25:19.667 回答