首页 > 解决方案 > 如何在实体框架中命名链接列

问题描述

在 EF 版本 6.2 中,我有一个学生和奖学金表。我有一堂课:

 public class SS2
{
    [Column(Order = 1)]
    public int SS2ID { get; set; }

    [Required]
    [Column("StudentId", Order = 2)]
    public Student StudentId { get; set; }

    [Required]
    [Column("ScholarshipId", Order = 3)]
    public Scholarship ScholarshipId { get; set; }
}

我期待 SS2 表的名称具有列名 StudentId 和 ScholarshipId。相反,它们在运行更新数据库后被命名为“StudentId_StudentId”和“ScholarshipId_ScholarshipId”。

有谁知道为什么数据注释中不尊重列名?我的语法有问题吗?

标签: entity-framework

解决方案


您可以为此使用 ForeignKeyAttribute:

[Required]
[Column(Order = 2)]
[ForeignKey("StudentId")]
public Student StudentId { get; set; }

推荐阅读