EFCore 1.1 Scaffold-DbContext提供程序错误

时间:2017-02-24 15:55:28

标签: entity-framework asp.net-core entity-framework-core

我无法让Scaffold-DbContext使用EFCore 1.1应用程序。

  

PM> Scaffold-DbContext -Connection“'Server = .; Database = testsite; User Id = sa; Password = Password1234;'” - 提供者Microsoft.EntityFrameworkCore.SqlServer -OutputDir EFContext -Context ApplicationDbContext

这是它给出的错误:

  

Scaffold-DbContext:无法将参数绑定到参数'Path',因为它是一个空字符串。   在行:1个字符:1   + Scaffold-DbContext   + ~~~~~~~~~~~~~~~~~~       + CategoryInfo:InvalidData:(:) [Scaffold-DbContext],ParameterBindingValidationException       + FullyQualifiedErrorId:ParameterArgumentValidationErrorEmptyStringNotAllowed,Scaffold-DbContext

不完全是即将发生的错误消息,所以我只运行了Scaffold-DbContext,并在提示提供商后给了我这个错误。我正在尝试使用的提供商是Microsoft.EntityFrameworkCore.SqlServer

2 个答案:

答案 0 :(得分:1)

如果您的解决方案中有多个项目,则可以尝试添加该选项 -StartupProject" nameofyourprojectstartup"使用必须运行此命令的项目名称。

尝试运行时出现了同样的错误" add-migration"在我的解决方案中使用多个项目(Docker支持)。

答案 1 :(得分:0)

就我而言,我通过安装Microsoft.EntityFrameworkCore.Tools对其进行了修复。确保关闭并重新打开VisualStudio。 (不要忘了在最后添加-force标志,以便从头开始重新应用更改) 示例:

  

Scaffold-DbContext   “服务器=(localdb)\ mssqllocaldb;数据库=博客; Trusted_Connection =真实;”   Microsoft.EntityFrameworkCore.SqlServer -OutputDir模型-force

所以,我的依赖项看起来像:

Microsoft.AspNetCore.All
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Tools

之后,它按预期工作。