我不断收到此错误,但我不知道为什么。
类型“BioSheet.Models.BioSheetModel”上的属性“Ward”上的ForeignKeyAttribute 无效。在依赖类型“BioSheet.Models.BioSheetModel”上找不到外键名称“WardId”。名称值应该是逗号分隔的外键属性名称列表。
public class Ward
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[ForeignKey("AddressId")]
[Required]
public virtual Address WardAddress { get; set; }
[ForeignKey("BioSheetId")]
public virtual List<BioSheetModel> BioSheets { get; set; }
[Required]
public String Code { get; set; }
}
public class BioSheetModel
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Required]
public String FirstName { get; set; }
[Required]
public String LastName { get; set; }
public String Email { get; set; }
[ForeignKey("WardId")]
[Required]
public Ward Ward { get; set; }
public String CellPhoneNumber { get; set; }
public String HouseNumber { get; set; }
[Required]
public String DoB { get; set; }
[Required]
public Address Address { get; set; }
public String OtherInformation { get; set; }
public String PreviousCallings { get; set; }
[ForeignKey("TimePeriodId")]
public virtual TimePeriod TimePeriods { get; set; }
public String HomeWard { get; set; }
public Boolean OkToText { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Required]
public DateTime TodaysDate { get; set; }
[ForeignKey("EMPId")]
public virtual EDUEMP EduEmp { get; set; }
[ForeignKey("SingId")]
public virtual Sing Singing { get; set; }
[ForeignKey("MissionId")]
public virtual Mission MissionIn { get; set; }
}
谁能帮我解决这个问题吗?
最佳答案
[ForeignKey("WardId")]
表示用作 Ward 表外键的属性应该是 BioSheetModel 上的
类。WardId
属性
您收到错误是因为您尚未在 BioSheetModel
类上定义 WardId
属性。
添加
public int WardId {get; set;}
对于不可为空/必需的关系,或者
public int? WardId {get; set;}
可空/可选关系。
关于asp.net-mvc - MVC 4 代码优先ForeignKeyAttribute 属性...类型...无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18884526/