【发布时间】:2019-05-08 16:09:14
【问题描述】:
我正在尝试使用 EntityFramework Core、数据库优先方法从现有数据库创建模型。模型已创建,但表名和列名已更改为 C# 样式。因为我希望模型仍然使用数据库中的精确表名和列名,所以我在命令行中附加了“--use-database-names”,根据Entity Framework Core tools reference
以下是包管理器控制台中执行的命令:
Scaffold-DbContext "Server=aServer;Database=someDb;Trusted_Connection=True" Microsoft.EntityFrameworkCore.SqlServer -o Models --use-database-names
但我收到以下错误:
Scaffold-DbContext:找不到接受参数“--use-database-names”的位置参数。 在 line: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)
【问题讨论】:
-
您链接到的工具参考描述了 .netCore cli 的使用。您提到过,您使用包管理器控制台。某些参数在 PMC 中的写法与在 Cli 中的写法不同。
-
@Nikolaus 你说得对,我的朋友。谢谢!
-
接受的答案会很好。 ;-)
标签: .net-core entity-framework-core scaffold database-first