【发布时间】:2015-07-23 00:24:35
【问题描述】:
我正在尝试在餐桌人员和部门之间建立一对零的关系。
public class Staff
{
public int ID { get; set; }
// other fields
[ForeignKey("DepartmentID")]
public int DepartmentID { get; set; }
public virtual Department Department { get; set; }
}
public class Department
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public virtual Staff Staff{ get; set; }
}
当我运行这段代码时,它给出了这个错误:
无法将属性“DepartmentID”配置为导航属性。该属性必须是有效的实体类型,并且该属性应该具有非抽象的 getter 和 setter。对于集合属性,该类型必须实现 ICollection,其中 T 是有效的实体类型。
【问题讨论】:
-
这没什么用,因为我已经在类中声明了外键属性。
-
阅读答案,你使用的
ForeignKeyAttribute错了。将其添加到导航属性而不是整数。 -
你能告诉我这样做的正确方法吗?因为我听不懂。
标签: c# asp.net-mvc entity-framework asp.net-mvc-5 entity-framework-5