Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使Visual Studio 2012从模型生成单数表名_C#_Asp.net Mvc_Entity Framework_Visual Studio 2012 - Fatal编程技术网

C# 使Visual Studio 2012从模型生成单数表名

C# 使Visual Studio 2012从模型生成单数表名,c#,asp.net-mvc,entity-framework,visual-studio-2012,C#,Asp.net Mvc,Entity Framework,Visual Studio 2012,我在Visual Studio 2012中为数据库表创建了一个模型,然后使用实体框架生成了一个控制器类和一些视图(Create.cshtml、Edit.cshtml等)。但是生成工具将表名复数化。我的表名是Person,生成的表名是Persons 是否有方法将Visual Studio配置为生成单数表名?重写OnModelCreating方法并添加: protected override void OnModelCreating(DbModelBuilder modelBuilder) {

我在Visual Studio 2012中为数据库表创建了一个模型,然后使用实体框架生成了一个控制器类和一些视图(Create.cshtml、Edit.cshtml等)。但是生成工具将表名复数化。我的表名是Person,生成的表名是Persons


是否有方法将Visual Studio配置为生成单数表名?

重写OnModelCreating方法并添加:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    base.OnModelCreating(modelBuilder);
}
模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove();
基于模型创建(modelBuilder);
}

如果您使用的是ADO.NET实体数据模型向导,则在选择表的最后一页上,还有一个此选项的复选框。非常恼人的是,它没有默认使用数据库中的表名

这是有办法的。这里的代码和解释:不适用于EF6,因为映射api不是公共的