实体框架 6 忽略了`[ForeignKey]` 数据注解

时间:2021-04-29 08:45:44

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

我尝试在 Entity Framework 6 中使用一对多关系,但出现错误 Invalid column name 'MeetingStatusObj_Id,但如果您在下面看到我已经使用 [ForeignKey("blabla")] 显式设置列名。

实体框架似乎出于某种原因忽略了 [ForeignKey("blabla")]

但是 如果我使用 FluentAPI 设置关系,它将完美运行。我错过了什么吗?

这是我的代码。

public class MeetingDetail
{
    [Key]
    public Guid Id { get; set; }

    [Required]
    public int IdMeetingStatus { get; set; }
    [ForeignKey("IdMeetingStatus")]
    public MeetingStatus MeetingStatusObj { get; set; }
}


public class MeetingStatus
{
    [Key]
    public int Id { get; set; }

    public string Name { get; set; }

    public IList<MeetingDetail> MeetingDetailObj { get; set; }

}



//In class AppDBContext
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   //Prevent error https://stackoverflow.com/a/6143116/7906006
   Database.SetInitializer<AppDbContext>(null);
   base.OnModelCreating(modelBuilder);

  //If i set the relationship using fluent API in here, it will work perfectly
}

编辑:

其他注释不太像 [Column("YourColumnName")] , [NotMapped]

0 个答案:

没有答案