升级到 NetCore 3.1 后找不到版本 (= 2.2.7) 的软件包 Microsoft.NETCore.App.Host.win-x64

Adm*_*and 6 c# msbuild csproj nuget nuget-package-restore

我在本地提要上将 nuget 包从 2.2.x 更新到 3.1.0。然后,在构建机器上尝试构建项目,但是:

Project.csproj(0,0): Error NU1102: Unable to find package Microsoft.NETCore.App.Host.win-x64 with version (= 2.2.7)
- Found 1 version(s) in localfeed [ Nearest version: 3.1.0 ]
Run Code Online (Sandbox Code Playgroud)

nuget.org 链接说我不应该直接使用它。所以我没有直接使用它。

csproj 示例:

  <Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup Label="Globals">
 <SccProjectName>SAK</SccProjectName>
 <SccProvider>SAK</SccProvider>
 <SccAuxPath>SAK</SccAuxPath>
 <SccLocalPath>SAK</SccLocalPath>
 </PropertyGroup>

  <PropertyGroup>
<ProjectGuid>{9B42C5B4-188E-482F-BC44-C3B243F92848}</ProjectGuid>
<OutputType>Exe</OutputType>
<TargetFrameworks>netcoreapp3.1</TargetFrameworks>
<PackageId>Project</PackageId>   
<AssemblyName>Projectr</AssemblyName>
<Version>1.1.0</Version>
Run Code Online (Sandbox Code Playgroud)

为什么.net core 不能使用 Microsoft.NETCore.App.Host.win-x64 3.1.0 版本?

mik*_*ike 11

在我们应用程序的 .csproj 文件中,我们有 RuntimeFrameworkVersion。我们将其更新到所需的版本:

<PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RuntimeFrameworkVersion>3.1.0</RuntimeFrameworkVersion>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)


Adm*_*and 2

问题出在该构建任务的 msbuild 配置上(针对 2.2.7 上的构建任务)。更改3.1.0解决问题

  • @AdmiralLand 您能否在解决方案中更好地解释这一点,以便其他人也可以使用它? (4认同)
  • 我们如何改变这一点? (3认同)
  • 我同意@ToreØstergaard 的观点。因为我尝试在 yaml 中设置一个特定任务来使用 dotnet core 3.1,但没有成功。我尝试了迈克的解决方案,也不起作用。而且你的解决方案并不像你想象的那么明显。您能澄清一下我们应该如何做吗?我转到“项目设置”&gt;“代理池”&gt;“选择池”&gt;“代理选项卡”&gt;“选择我的代理”,但那里什么也没有 (3认同)
  • 答案不清楚。 (3认同)