我正在尝试根据与父表的外键关系从高度表中获取记录。但我得到无效列名....错误。这是我的模型设置: -
[Table("Candidate")]
public partial class Candidate
{
public Candidate()
{
Heights = new HashSet<Height>();
Weights = new HashSet<Weight>();
}
[Key]
public int CandidateID { get; set; }
[StringLength(64)]
public string FirstName { get; set; }
[StringLength(64)]
public string LastName{ get; set; }
}
然后我有一个身高和体重表。高度表的模型是: -
[Table("Height")]
public partial class Height
{
[Key]
public int HeightID { get; set; }
public int? CandidateID { get; set; }
public double? HeightVal { get; set; }
ForeignKey("CandidateID")]
public virtual Candidate Candidate { get; set; }
}
这是LinQ查询: -
return (from c in _db.Candidates
join h in _db.Heights
on c.CandidateID equals h.CandidateID
where c.CandidateID == candidateId
select t);
当我尝试使用这些模型获取记录时,我收到此错误: -
System.Data.SqlClient.SqlException:列名无效 “Height_HeightID
正如类似stackoverflow所建议的那样,我添加了ForeignKey [] DataAnnotation,但我仍然得到同样的错误。
同样在我的Sql Server数据库中,Height Table对CandidateID有外键约束。