实体框架代码优先迁移将所有表重命名为复数形式

时间:2014-10-13 21:18:34

标签: asp.net-mvc entity-framework ef-code-first ef-migrations

在我继承的数据库中,这些表是以单数命名的(即“dbo.Genre”)。我的映射代码也将表设置为单数:

public class GenreMap : EntityTypeConfiguration<Genre>
{
    public GenreMap()
    {
        this.ToTable("Genre");
    }
}

但是,当我运行Add-Migration时,生成的Up()函数会显示......

RenameTable(name: "dbo.Genre", newName: "Genres");

这种情况发生在所有表上,并且它们都具有单数形式的ToTable映射。

我将以下代码段添加到OnModelCreating(DbModelBuilder模型构建器)函数中:

modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

但是,它仍未按预期工作。还有什么可能导致这种情况发生吗?

1 个答案:

答案 0 :(得分:0)

如果要删除多个表名,那就是正确的。

modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

如果您需要表格的多元化,请注释上面的代码行。