首页 > 解决方案 > UseDotNet@2 任务是否安装了 Hosting Bundle?

问题描述

试图了解 UseDotnet@2 任务对 Asp.Net Core Hosting Bundle 的作用。当我使用这个时:

    - task: UseDotNet@2
      inputs:
        packageType: sdk
        version: 3.1.x

我在注册表中看到“Microsoft .NET Core 3.1.5 - Windows Server Hosting (x86)”,但我的应用程序似乎需要“Microsoft .NET Core 3.1.8 - Windows Server Hosting (x86)”(我希望它会按照https://dotnet.microsoft.com/download/dotnet-core/3.1安装与 sdk 3.1.4 相关的版本)

有人可以澄清 UseDotnet 任务将安装哪个版本的 Hosting Bundle?

我是否需要使用此第三方任务而不是 UseDotNet@2 https://marketplace.visualstudio.com/items?itemName=rbosma.InstallNetCoreRuntimeAndHosting

标签: asp.net-core.net-coreazure-devopsazure-pipelinesdevops

解决方案


我在UseDotnet@2任务的源代码中搜索,但没有找到下载托管包的脚本,只有下载 .net Core 运行时的脚本。

因此,如果有一个托管捆绑包,它可能已经在代理中。

在 Microsoft 托管的 Windows 代理中,虽然没有直接证据表明安装了托管 Bundle,但它已经安装了一些 .net Core 运行时版本。

对于带有 Visual Studio 2019 ( windows-latestOR windows-2019) 的 Windows Server 2019,请单击此链接了解详细信息。

对于带有 Visual Studio 2017 ( vs2017-win2016) 的 Windows Server 2016,请单击此链接了解详细信息。

由于 .net Core 运行时是托管包的一部分,我认为“Microsoft .NET Core 3.1.5 - Windows Server Hosting (x86)”可能与已安装的这些运行时版本有关

更重要的是,您可以使用UseDotnet@2任务来阐明或安装特定的 .net Core Runtime 版本。

这是一个例子:

- task: UseDotNet@2
  inputs:
    packageType: 'runtime'
    version: '3.1.8'

推荐阅读