实体框架6在每个实体的末尾添加“集合”

时间:2018-12-04 11:22:35

标签: entity-framework

在使用如下所示的Entity Framework 6创建数据库模型之后(我知道.NET Core已退出):

enter image description here

EF生成以下代码:

public virtual DbSet<User> User { get; set; }
public virtual DbSet<Statevalues> Statevalues { get; set; }

在模型上下文中,但还会在数据库中创建称为:

的表
StatevaluesSet  
UserSet  

为什么每个名称末尾都使用Set

1 个答案:

答案 0 :(得分:0)

我已经用Microsoft 6.2.0版的EntityFramework尝试过。一个带有学校和学生的简单DbContext,我只有一个名为Schools的表和一个名为Students的表。

要覆盖标准表命名,请覆盖DbContext.OnModelCreating。

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
     // give table Schools a special name:
     modelBuilder.Entity<School>()
         .HasEntitySetName("MySpecialSchools");
}