我正在尝试在.Net Core类库项目中使用EF Core对现有数据库进行逆向工程。
这是project.json
{
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.1.0",
"type": "platform"
},
"Microsoft.EntityFrameworkCore.Design": "1.1.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.1.0",
"Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final"
},
"frameworks": {
"netcoreapp1.1": {
"imports": [
"dotnet5.6",
"portable-net45+win8"
]
}
}
}
这是我得到的错误:
PM> scaffold-dbcontext "data source=Server;Initial Catalog=Database;Integrated Security=true" Microsoft.EntityFrameworkCore.SqlServer -verbose
Build started...
Build succeeded.
The specified framework 'Microsoft.NETCore.App', version '1.1.0' was not found.
- Check application dependencies and target a framework version installed at:
C:\Program Files\dotnet\shared\Microsoft.NETCore.App
- The following versions are installed:
1.0.1
1.1.0-preview1-001100-00
- Alternatively, install the framework version '1.1.0'.
Process finished with non-zero exit code
这是我针对.Net的1.1.0。
答案 0 :(得分:7)
如错误日志所示,您的计算机上没有安装1.1.0版本的.NET Core。 scaffold-dbcontext
工具需要此版本,该工具是.NET Core CLI的一部分,不属于您的应用程序,因此不会使用您应用中的nuget软件包。
要安装.NET Core 1.1.0,请转到.NET Core Download页面并选择您需要的x86/x64
版本。之后,您将在C:\Program Files\dotnet\shared\Microsoft.NETCore.App
中拥有新的“1.1.0”文件夹,这是.NET Core框架的默认位置。