无法将我的解决方案从v2.1.0升级到v2.1.3

时间:2018-08-24 11:00:54

标签: .net-core asp.net-core-2.1

我正在开发.net Core v2.1应用程序,在开发过程中,我尝试定期更新NuGET软件包。

我无法更新我的Microsoft.AspNetCore.App,现在是v2.1.1,但最新的稳定版是v2.1.3 我也无法将Microsoft.NETCore.App从v2.1.0更新到v2.1.3

我已经读了几个小时了。 我确实拥有所有必需的SDK:

>dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   2.1.401
 Commit:    91b1c13032

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.1.401\

Host (useful for support):
  Version: 2.1.3
  Commit:  124038c13e

.NET Core SDKs installed:
  2.1.4 [C:\Program Files\dotnet\sdk]
  2.1.101 [C:\Program Files\dotnet\sdk]
  2.1.103 [C:\Program Files\dotnet\sdk]
  2.1.104 [C:\Program Files\dotnet\sdk]
  2.1.201 [C:\Program Files\dotnet\sdk]
  2.1.202 [C:\Program Files\dotnet\sdk]
  2.1.302 [C:\Program Files\dotnet\sdk]
  2.1.400 [C:\Program Files\dotnet\sdk]
  2.1.401 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

我正在运行VS2017社区版v15.8.1

当我尝试使用Manage NuGet for solution ..更新时,收到了Blocked by project消息,无法选择较新的版本。

我使用

阅读
Install-Package Microsoft.NETCore.App -Version 2.1.3
Package Manager Console中的

也可以使用。 但是然后我得到这个错误:

NETSDK1061: The project was restored using Microsoft.NETCore.App version 2.1.3, but with current settings, version 2.1.0 would be used instead. To resolve this issue, make sure the same settings are used for restore and for subsequent operations such as build or publish. Typically this issue can occur if the RuntimeIdentifier property is set during build or publish but not during restore.

我已经阅读了它所指向的页面,但不了解该怎么做。

我也不明白为什么这么难。我没有从v2升级到v3,甚至没有从v2.1升级到v2.2,我只是想从v2.1.0升级到v2.1.3。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:4)

您需要做的是将要处理的SDK版本明确告知Visual Studio。为此,请将version标记添加到.csproj文件中的项目节点。 这将告诉VS使用指定的SDK版本编译项目。现在,您还需要告诉它也要使用哪个运行时版本,否则它将编译但无法运行。为此,您需要添加一个运行时节点,并在其中指定版本。 看起来像这样...

<Project Sdk="Microsoft.NET.Sdk.Web" Version="2.1.3">
  <PropertyGroup>
    <RuntimeFrameworkVersion>2.1.3</RuntimeFrameworkVersion>
  </PropertyGroup>
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    ....
  </PropertyGroup>

  ...
</Project>

某些软件包(例如Microsoft.NETCore.App)可以通过Nuget软件包管理器安装,但是如果它们在项目版本之前,则将无法使用。

希望这会有所帮助。