无法将VS Project从ASP.NET Core 2.1升级到2.2

时间:2019-04-04 21:28:40

标签: asp.net-core visual-studio-2017 asp.net-core-2.1

运行VS 15.9.4版,我遵循Microsoft's instructions(我认为),但是我仍然无法将现有的2.1项目升级到最新的稳定版(2.2.3)。

这是我的dotnet --info enter image description here

这是我的项目文件:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <Configurations>Debug;Release;DEBUG_LOCALAPI</Configurations>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

  <ItemGroup>
    <Content Remove="appsettings.Development.json" />
    <Content Remove="appsettings.json" />
  </ItemGroup>

  <ItemGroup>
    <None Include="appsettings.Development.json" />
    <None Include="appsettings.json" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Versioning" Version="3.0.0" />
    <PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\PublishingAPICommon\PublishingAPICommon.csproj" />
  </ItemGroup>

</Project>

如果我尝试从NuGet管理器将2.2.3安装到该项目,这是我收到的错误消息:

  

严重性代码描述项目文件行抑制状态   错误NETSDK1045当前的.NET SDK不支持定位.NET   核心2.2。目标.NET Core 2.1或更低版本,或者使用的版本   支持.NET Core 2.2的.NET SDK。 PublishingStorage C:\ Program   文件\ dotnet \ sdk \ 2.1.502 \ Sdks \ Microsoft.NET.Sdk \ targets \ Microsoft.NET.TargetFrameworkInference.targets 137

这是当我尝试直接编辑项目属性时在VS中看到的内容: enter image description here

我尝试过的事情:

  1. 重新启动VS
  2. 重新启动机器
  3. 使用2.2.3值创建项目范围的global.json文件

1 个答案:

答案 0 :(得分:0)

https://github.com/aspnet/AspNetCore.Docs/issues/11844的@ martin-ullrich发来的

  

转到https://dotnet.microsoft.com/download/dotnet-core/2.2并   下载2.2.105版本的安装程序。任何> = 2.2.200   不适用于VS2017。2.2.105和2.2.202均包含最新版本   和最大的.NET Core 2.2版本,但它们的版本不同   它们包括并基于的工具-1xx系列是MSBuild   15.,NuGet 4等,而2xx列是MSBuild 16.,NuGet 5等,Visual Studio只寻找与之兼容的最新版本。   其MSBuild版本-对于VS 2017,这是2.1.502版本,   无法定位.NET Core 2.2。 (更令人困惑的是,现在有   带有VS 2019工具版本的2.1.6xx版本以及.NET Core 2.1运行时)

     

[@] leecow和[@] rowanmiller正在努力更新该页面   关于VS,另请参阅dotnet / core#2542和dotnet / sdk#3076   大约是同样的问题。


我的贡献:安装2.2.105后,我删除了目录C:\Program Files (x86)\dotnet\sdk和/或C:\Program Files\dotnet\sdk中名为'2.2.202'的文件夹,以便dotnet --info现在读取以下内容: enter image description here