ASP.Net Core官方说重启visual studio可以修复以下错误:
Scaffold-DbContext : The term 'Scaffold-DbContext' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
但是命令总是失败。
我按照 ASP.Net 核心在线文档中提供的示例在程序包管理器控制台中运行它。
Scaffold-DbContext "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
最佳答案
我遇到了同样的问题。对我来说,缺少的是 EntityFrameworkCore.Tools 并且没有通过 NuGet 正确安装。
在包管理器控制台(工具 > NuGet 包管理器 > 包管理器控制台
)中运行这些命令:
Install-Package Microsoft.EntityFrameworkCore.SqlServer –Pre
Install-Package Microsoft.EntityFrameworkCore.Tools –Pre
Install-Package Microsoft.EntityFrameworkCore.SqlServer.Design –Pre
然后在 project.json 我添加了这个:
"tools": {
"Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final",
}
重要!确保此版本匹配“依赖项” 包(也在 project.json 中)。在此示例中,“1.1.0-preview4-final” 也应在依赖项中使用。
如果问题仍然存在,请尝试恢复您的 ef 运行时,此处提供指导:https://github.com/aspnet/EntityFramework/issues/5549
关于c# - EF 核心 : Scaffold DbContext keeps failing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39817262/