EF代码第一个外键关联属性

本文关键字:关联 属性 代码 第一个 EF | 更新日期: 2023-09-27 18:19:52

好的,我想知道是否有一种方法可以在名称不匹配时使用EF Code First Data Annotations映射外键关系,而不是使用Fluent API。这是我的场景。我有两张带有外键的一对多关系表。

安全表,包含:int SecurityID(PK)//其他栏int IncomeFrequencyID(FK)

频率表int FrequencyID(PK)//其他列

因此IncomeFrequencyID映射到FrequencyID

然后在我的代码第一:

public class Security
{
    public int SecurityID {get;set;}
    //Other properties
    public int IncomeFrequencyID {get;set;}
    //Navigation Properties
    public virtual Frequency IncomeFrequency {get;set;}
}
public class Frequency
{
    public int FreqencyID {get;set;}
    //Other properties
}

有没有一种方法可以使用数据注释来实现EF关系?也许使用AssociationAttribute?

[Association("FK_Security_Frequency", "IncomeFrequencyID", "FrequencyID", IsForeignKey = true)]

EF代码第一个外键关联属性

使用ForeignKey属性,例如:

public class Security
{
    public int SecurityID {get;set;}
    //Other properties
    public int IncomeFrequencyID {get;set;}
    //Navigation Properties
    [ForeignKey("IncomeFrequencyID")]
    public virtual Frequency IncomeFrequency {get;set;}
}

另一方面,将其标记为主键:

public class Frequency
{
    [Key]
    public int FreqencyID {get;set;}
    //Other properties
}