Asp.net core 将.NET核心应用升级到1.1时出错
因此,我有一个面向net461框架的ASP.NET Core 1.0应用程序,它工作得很愉快 今天我尝试将其升级到新的ASP.NET Core 1.1(根据说明,您只需升级Nuget软件包) 这导致了以下大量错误:Asp.net core 将.NET核心应用升级到1.1时出错,asp.net-core,.net-core,Asp.net Core,.net Core,因此,我有一个面向net461框架的ASP.NET Core 1.0应用程序,它工作得很愉快 今天我尝试将其升级到新的ASP.NET Core 1.1(根据说明,您只需升级Nuget软件包) 这导致了以下大量错误: error: Unable to resolve 'Microsoft.AspNetCore.Diagnostics.Abstractions (>= 1.1.0)' for '.NETFramework,Version=v4.6.1'. error: Unable to re
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升级之前)以供参考:
编辑:运行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"
},
我终于找到了答案,以防其他人也有同样的问题 有三个步骤可以让它工作:
global.json
文件,并将SDK版本更改为“1.0.0-preview2-1-003177”
(出于某种原因,v1.1仍然有一个名为v1.0.0的SDK——知道那里发生了什么吗?!)stdoutLogEnabled
后,您可以看到异常情况:要解决这个问题,您需要删除应用程序的
bin
文件夹,然后重新生成(由于某些原因,“重新生成解决方案”还不够)。当您部署到生产环境中时,可能还需要删除那里的bin文件夹,否则可能会遇到同样的问题。我怀疑与@gallivantor在其第1部分中提到的类似,但不知何故,用户界面后面的NuGet.config
文件一直在重写,当我按照@jim-w的建议重新启动Visual Studio时,NuGet.org
项将返回未选中状态
因此,我决定查看NuGet.config
文件,并注意到有两个部分:
和
。而带有NuGet.org
键的源代码同时位于这两个目录中。我试图将其从“禁用的软件包”部分删除,然后一切都开始工作
之前:
之后:
警告:为了保持答案简单,我省略了一些细节(特别是关于环境的)。在将此解决方案应用于您的情况之前,请确保它适合您的情况。您是否下载了1.1 SDK/工具?更新nuget软件包后,是否可以发布project.json依赖项部分?是的,安装了1.1 SDK(在添加/删除程序中显示为“Microsoft.NET Core 1.1.0-SDK 1.0.0预览版2.1-03177(x64))另外,在post中添加了新的依赖项部分,命令提示符中的
dotnet restore
告诉了您什么?另外,将Microsoft.AspNetCore.Server.IISIntegration.Tools
更新为1.1.0-preview4-final
。#1本身就让它为我工作了——尽管出于某种原因我不得不重新启动VS。
"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"
},