我的Product表包含category1和category2字段,
并且每个字段都包含一个表示类别表ID(FK)的数字(ID)。
我想在检索数据时为set category name添加实体,但我不知道如何使category1_name和category2_name可以有类别名称。 (很难解释= 3)
EX)
public class Product
{
[Key]
public int no {get; set;}
public int category1 {get; set;} // category table ID number
public int category2 { get; set;} // category table ID number
public virtual Category category1_name {get; set;}
public virtual Category category2_name {get; set;}
}
public class Category
{
[Key]
public int no {get; set;}
public string category {get; set;}
}
但是当我尝试检索数据时,我收到了一个错误,
'on子句'中的未知列'Extent1.category1_name_no'
如何将category1_name映射到类别表ID?
答案 0 :(得分:3)
您希望EF如何知道要映射到哪个导航属性的标量属性。您必须使用流畅的API或数据注释来配置正确的映射。
public class Product
{
[Key]
public int no {get; set;}
public int category1 {get; set;} // category table ID number
public int category2 { get; set;} // category table ID number
[ForeignKey("category1")]
public virtual Category category1_name {get; set;}
[ForeignKey("category2")]
public virtual Category category2_name {get; set;}
}
您应该考虑遵循命名属性的正确命名约定。