ForeignKey注释似乎不起作用

时间:2019-06-22 00:45:01

标签: c# entity-framework entity-framework-6

我有以下内容:

public class Sample
{
    public Person Sampler { get; set; }
    [ForeignKey("Sampler")]
    public int? Person_Id { get; set; }
}

但是我不断收到错误消息“ SqlException:无效的列名'Sampler'。”查询时。我不明白,因为在生成sql时Sampler不应该是一列。我在这里想念什么吗?尽管对我来说,属性名称在以前的情况下是“ Person”而不是“ Sampler”,但这对我总是有用的,所以我不确定发生了什么。

1 个答案:

答案 0 :(得分:-2)

在导航属性上应用外键属性应该在这里起作用

public class Sample{
public int SampleId{ get; set; }
public string SampleName{ get; set; }

public int? Person_Id { get; set; } 
[ForeignKey("Person_Id")]
public Person Sampler { get; set; } 
}

公共类人物{

public int Person_Id { get; set; }
public string Name { get; set; }

public ICollection<Sample> Samples { get; set; }
}