我正在尝试创建我在Visual Studio 2015中开发的ASP.Net Core项目的第一次迁移。我的解决方案只有一个Project。我的project.json
文件位于Project文件夹的根目录中。
我右键单击项目并选择'打开命令行>默认情况下'并输入以下内容:
dotnet ef migrations add InitialDatabase
命令行返回:
No project was found. Change the current working directory or use the --project option.
我尝试了所有不同版本的EntityFrameworkCore和Tools。我的project.json
文件如下:
{
"dependencies": {
"Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final",
"Microsoft.AspNetCore.Diagnostics": "1.0.1",
"Microsoft.AspNetCore.Mvc": "1.0.1",
"Microsoft.AspNetCore.Mvc.TagHelpers": "1.0.1",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.1",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
"Microsoft.AspNetCore.StaticFiles": "1.0.1",
"Microsoft.EntityFrameworkCore": "1.0.2",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.2",
"Microsoft.EntityFrameworkCore.Design": {
"type": "build",
"version": "1.0.2"
},
"Microsoft.EntityFrameworkCore.Tools": {
"type": "build",
"version": "1.0.0-msbuild3-final"
},
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.0.0-msbuild3-final",
"Microsoft.Extensions.Configuration.Json": "1.0.1",
"Microsoft.Extensions.Logging.Console": "1.0.1",
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.1"
}
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-msbuild3-final",
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.0.0-msbuild3-final"
},
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dotnet5.6",
"portable-net45+win8"
]
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
},
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
},
"publishOptions": {
"include": [
"wwwroot",
"web.config"
]
},
"scripts": {
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
}
}
非常欢迎任何建议。感谢。
答案 0 :(得分:5)
"tools": {
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.0.0-msbuild3-final"
}
版本1.0.0-msbuild3-final
仅适用于基于MSBuild的新项目(不是project.json
)。请改用版本1.0.0-preview3-final
。
答案 1 :(得分:0)
dotnet-ef命令已移动。
您需要添加引用 Microsoft.EntityFrameworkCore.Tools.DotNet AND Microsoft.EntityFrameworkCore.Design 到您的依赖项中 project.json,然后将 Microsoft.EntityFrameworkCore.Tools.DotNet 添加到工具部分,你应该很高兴。
引自:http://errummwelluhh.blogspot.com。 我也针对同一个问题here发布了相同的答案。