ef6数据库迁移更改表名
问题描述:
我首先使用EF6代码和数据库迁移来保持我的新数据库的日期。 我想将其中一个数据库表的名称从“contacts”更改为“contact”。ef6数据库迁移更改表名
因此,在EF中,我更改类的名称和自定义DBContext类中,我将联系人重命名为联系人,因此它现在显示;
public DbSet<Contact> Contact { get; set; }
但是,我使用Update-Database -Verbose -Force运行数据库迁移,并且未做任何更改。 要了解发生了什么,我将一个新字段放入,并尝试更新Contacts表,而不是联系人,它需要创建。 那么我该如何解决这个问题?
答
尝试删除复数化:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
答
我发现这是使用下面的属性从类声明的答案;
[Table("Contact")]
我刚刚找到了答案 - 不同的 - 我在哪里使用表属性; [班级(“联系”)]。不过,我认为你的答案也会起作用。 – arame3333 2014-08-28 07:23:37