Azure Artifact Nuget 包调试问题

Azure Artifact Nuget package debugging issue

我正在使用 Azure Pipeline 构建 NuGet 包并将其发布到 Azure Artifact 源。管道包括如下发布符号任务:

- task: PublishSymbols@2
  inputs:
    SearchPattern: '**/bin/**/*.pdb'
    SymbolServerType: 'TeamServices'

但是,在将包安装到示例控制台应用程序时,我无法调试包(方法的主体不可见)。

我正在使用 C# .NET Core 3.1 管道类型:YAML 使用本文配置 Visual Studio https://docs.microsoft.com/en-us/azure/devops/artifacts/symbols/setting-up-github-sourcelinking?view=azure-devops

对于那些面临此问题的人,需要考虑一些 issue/case 与 Azure DevOps API 和符号文件 (PDB) 打包机制相关的问题。 PDB 包含有关包的所有 cs 文件的信息,并且由于包打包过程是在代理本身上完成的,因此有关 cs 文件的信息如下所示:$(Build.SourcesDirectory)/RepoName/SomeDirectory/File.cs

但是,当 Visual Studio 尝试从 Azure DevOps API 下载文件(引用在 PDB 文件中)时,它无法找到该文件。因为API想要这样获取cs文件:https:///azureDevOpsAPIURI/OrganizationID/RepoID/path=/SomeFirectory/File.cs

这是API和PDB文件引用之间的冲突。我设法通过将所有 CS 文件从代理的结帐路径移动到 $(Build.SourcesDirectory) 来解决这个问题,以便在对 Azure DevOps API 的调用中摆脱 RepoName。我不确定这是冲突还是有本地方法可以做到这一点。