首先是EntityFramework Core数据库,Scaffold-DbContext找不到位置参数,该位置参数接受参数'--use-database-names'错误

时间:2018-12-06 21:54:49

标签: .net-core entity-framework-core scaffold database-first

我正在尝试使用EntityFramework Core(数据库优先方法)从现有数据库中创建模型。创建了模型,但是表名和列名已更改为C#样式。因为我希望模型仍然像数据库中一样使用确切的表名和列名,所以我根据Entity Framework Core tools reference

在命令行中附加了“ --use-database-names”

以下是在程序包管理器控制台中执行的命令:

Scaffold-DbContext "Server=aServer;Database=someDb;Trusted_Connection=True" Microsoft.EntityFrameworkCore.SqlServer -o Models --use-database-names

但是我遇到以下错误:

  

Scaffold-DbContext:找不到接受参数'--use-database-names'的位置参数。   在第1行:char:1

     
      
  • Scaffold-DbContext“ Server = aServer; Database = someDb; Trusted_Conn ...
  •   
  • ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~      
        
    • CategoryInfo:InvalidArgument:(:) [Scaffold-DbContext],ParameterBindingException
    •   
    • FullyQualifiedErrorId:PositionalParameterNotFound,Scaffold-DbContext
    •   
  •   

有人遇到这个问题吗?我错过了什么?预先感谢!

以下是简单项目的一些基本信息。

IDE:Visual Studio 2017

目标框架:.NET Core 2.1

已安装的NuGet软件包:

Microsoft.EntityFrameworkCore.Design(2.2.0)
Microsoft.EntityFrameworkCore.SqlServer(2.2.0)
Microsoft.EntityFrameworkCore.Tools(2.2.0)
Microsoft.EntityFrameworkCore.SqlServer.Design(1.1.6)

1 个答案:

答案 0 :(得分:1)

就像在reference中提到的Package Manager控制台一样,您必须编写:

set*

不是

this.window.setAttributes()