我正在使用dotnet 4.5.2创建一个新的ASP.NET Core项目,并尝试添加对Microsoft.EntityFrameworkCore.Tools的引用。在我的project.json文件中,我在依赖项下列出了这些:
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
在“参考”下查看,它们似乎已成功加载。然后我在project.json中的工具下添加了这个:
"Microsoft.EntityFrameworkCore.Tools": {
"imports": [ "portable-net451+win8" ],
"version": "1.0.0-preview2-final"
}
在我添加之后,当我构建解决方案时,我得到了这个构建错误:
Could not find a part of the path 'C:\Users\(my user name)\.nuget\packages\.tools\Microsoft.EntityFrameworkCore.Tools'
如果删除导入行,我会收到同样的错误。我在这里做错了什么?
答案 0 :(得分:7)
刚遇到同样的问题。 我通过在包管理器控制台中再次安装工具包来解决了这个问题:
Install-Package Microsoft.EntityFrameworkCore.Tools –Pre
在重新安装之前,.nuget \ packages.tools文件夹中实际上缺少该软件包,重新安装后它就在那里。
我遵循了https://docs.efproject.net/en/latest/platforms/aspnetcore/new-db.html教程,但我认为我以错误的顺序安装了软件包,或者最初忘记在"工具"中引用EF.tools软件包。项目部分json。
答案 1 :(得分:2)
我遇到了同样的问题,刚刚使用Microsoft的EF Core安装指南中的示例解决了问题,检查了他们的GitHub代码,我发现这对于project.json有效。
我不得不从“frameworks”属性中删除导入,这意味着暂时没有Application Insights。完成此操作并构建后,该文件夹出现在tools文件夹中。对不起,我不擅长在这里发布代码,但这里有重要的部分,...用来修剪我其他东西的帖子:
"dependencies": {
...
"Microsoft.EntityFrameworkCore": "1.0.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0",
"Microsoft.EntityFrameworkCore.Tools": {
"version": "1.0.0-preview2-final",
"type": "build"
} ...},
"tools": {
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
},
"frameworks": {
"netcoreapp1.0": {
}...
答案 2 :(得分:1)
我遇到了同样的问题,不得不将以下内容添加到我的project.json。
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.1.0-preview1-final"
唯一的区别是我正在使用新发布的.NET Core 1.1,ASP.NET 1.1和Entity Framework 1.1。
答案 3 :(得分:1)
我有同样的问题并尝试了很多东西。我发现设计和工具需要是相同的版本,但intellisense没有给我两个包共有的选项。然后我找到了这篇文章,并尝试了它的代码。
https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/dotnet
使用该文章中的以下代码解决了我的问题;
"dependencies": {
"Microsoft.EntityFrameworkCore.Design": {
"type": "build",
"version": "1.0.0-preview2-final"
}
"Microsoft.EntityFrameworkCore.Tools": {
"type": "build",
"version": "1.0.0-preview2-final"
},
},
...
"tools": {
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
},
答案 4 :(得分:0)
我的问题是我有 Microsoft.EntityFrame W orkCore.Tools 而不是 Microsoft.EntityFrame w ork.Tools ,请注意小写 w 。