Azure DevOps - 通过 VSBuild@1 启用 .pdb 文件生成

Azure DevOps - Enable .pdb file generation via VSBuild@1

我有一个在 VSBuild@1 任务中使用的 pubxml,构建工作正常,只是我没有得到我的 .pdb 文件。如何确保 .pdb 文件也包含在我的版本中?

项目发布配置

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Staging2|AnyCPU'">
    <DebugSymbols>true</DebugSymbols>
    <OutputPath>bin\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <DebugType>full</DebugType>
    <PlatformTarget>AnyCPU</PlatformTarget>
    <LangVersion>default</LangVersion>
    <ErrorReport>prompt</ErrorReport>
    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>

Pubxml 文件

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <PublishProvider>FileSystem</PublishProvider>
    <LastUsedBuildConfiguration>Staging2</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>False</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>Publish</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
    <TargetFramework>net472</TargetFramework>
    <DebugSymbols>True</DebugSymbols>
    <DebugType>Full</DebugType>
  </PropertyGroup>
</Project>

YAML 构建任务

task: VSBuild@1
  inputs:
    solution: '**\MyApps\Main.csproj'
    msbuildArgs: '/t:build /p:DeployOnBuild=true /p:PublishProfile=publish.pubxml /p:OutputPath=$(build.artifactStagingDirectory)\MainPublish\'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)' 

根据我查到的,如果你能设置/Build=full 属性就好了。那么我的问题是,如果是这样,我应该在哪里添加它?

项目文件的 <DebugType>Full</DebugType> 部分等效的 MSBuild 参数是:/p:DebugType=full.

因此,如果您通过添加 /p:DebugType=full 来更改 VSBuild 任务的 msbuildArgs 部分,这应该可以解决问题。