asp.net-mvc - MVC 4 代码优先ForeignKeyAttribute 属性...类型...无效

标签 asp.net-mvc asp.net-mvc-4 ef-code-first

我不断收到此错误,但我不知道为什么。

类型“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/

相关文章:

c# - 使用捆绑时未显示图标

javascript - 使用 HTTP 基本身份验证返回重定向到 url

mysql - EF5不使用MySQL生成枚举字段

entity-framework-4.1 - 在 Entity Framework 4.1 中同步反向关联的指南

c# - 如何将单个实体映射到多个表

c# - Visual Studio - Resx 文件默认 'internal' 到 'public'

asp.net-mvc - 嵌套内容占位符

javascript - Jquery数据表 Entity Framework 复选框更新数据库

c# - 无法在 POST 上绑定(bind) MVC 模型

c# - 模型内的列表项在发布时始终为空 - Asp.net MVC