在使用如下所示的Entity Framework 6创建数据库模型之后(我知道.NET Core已退出):
EF生成以下代码:
public virtual DbSet<User> User { get; set; }
public virtual DbSet<Statevalues> Statevalues { get; set; }
在模型上下文中,但还会在数据库中创建称为:
的表StatevaluesSet
UserSet
为什么每个名称末尾都使用Set
?
答案 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");
}