我有asp dot net core项目,我需要发出命令
$ dotnet ef database update
但是在更新了dotnet之后,这个命令导致了这样的错误:
...Check that 'Microsoft.EntityFrameworkCore.Design' has been
added to "dependencies" in the startup project and that the
version of 'Microsoft.EntityFrameworkCore.Tools' in "tools"
and 'Microsoft.EntityFrameworkCore.Design' are the same...
我有一个1.0.0-preview3-003590版本的dotnet的linux平台。部分地,我的project.json看起来像这样:
"dependencies": {
...
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0",
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
"Microsoft.EntityFrameworkCore.Sqlite": "1.0.0",
"Microsoft.EntityFrameworkCore.Sqlite.Design": {
"version": "1.0.0",
"type": "build"
},
"Microsoft.EntityFrameworkCore.Tools": {
"version": "1.0.0-preview2-final", // and here is no 1.0.0 version!
"type": "build"
},
...
},
"tools": {
...
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
},
看起来我有不同版本的工具和设计包。但是nuget中没有1.0.0的工具包。此外,我试图将所有EF软件包降级到1.0.0-preview2-final版本。这对我不起作用。
这个问题完全可以通过YO生成的项目和我机器上实体框架核心的测试项目重现。
如何更改project.json以成功更新数据库?
答案 0 :(得分:0)
通过安装dotnet的预览2而不是预览3来解决。