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>(); 
} 
+0

我刚刚找到了答案 - 不同的 - 我在哪里使用表属性; [班级(“联系”)]。不过,我认为你的答案也会起作用。 – arame3333 2014-08-28 07:23:37

我发现这是使用下面的属性从类声明的答案;

[Table("Contact")]