【发布时间】:2017-01-20 09:52:23
【问题描述】:
所以,我有一个运行良好的 ASP.NET Core 1.0 应用程序,目标是 net461 框架。
今天我尝试将其升级到新的 ASP.NET Core 1.1(根据说明on this page,您需要做的就是升级 Nuget 包)
这导致了以下一系列错误:
error: Unable to resolve 'Microsoft.AspNetCore.Diagnostics.Abstractions (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.AspNetCore.Hosting.Abstractions (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.AspNetCore.Http.Extensions (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.AspNetCore.WebUtilities (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.Extensions.FileProviders.Physical (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.Extensions.Logging.Abstractions (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.Extensions.Options (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'System.Diagnostics.DiagnosticSource (>= 4.3.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'System.Reflection.Metadata (>= 1.4.1)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.AspNetCore.Mvc.ApiExplorer (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
error: Unable to resolve 'Microsoft.AspNetCore.Mvc.Cors (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'.
...
我在这里错过了什么?这不应该有效吗?
作为参考,这里是 project.json 的相关部分(在运行 Nuget 升级之前):
"dependencies": {
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.AspNet.WebApi.Client": "5.2.3"
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
},
"frameworks": {
"net461": {
"imports": [
]
}
}
编辑:运行 Nuget 升级后,Visual Studio 将依赖项部分更改为此:
"dependencies": {
"Microsoft.AspNet.WebApi.Client": "5.2.3",
"Microsoft.AspNetCore.Diagnostics": "1.1.0",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0"
},
【问题讨论】:
-
您是否下载了 1.1 SDK/工具?
-
你能在更新 nuget 包后发布你的 project.json 依赖部分吗?
-
是的,安装了 1.1 SDK(它在添加/删除程序中显示为“Microsoft .NET Core 1.1.0 - SDK 1.0.0 Preview 2.1-03177 (x64)”)另外,添加了新的帖子的依赖项部分
-
命令提示符中的
dotnet restore告诉你什么? -
另外,将
Microsoft.AspNetCore.Server.IISIntegration.Tools更新为1.1.0-preview4-final。