将 NuGet .pdb 复制到输出目录

t3c*_*b0t 6 c# pdb-files nuget asp.net-core

当我构建一个 ASP.NET Core 项目时,它只会将它自己的.pdb文件和所有 . dlls 的任何已安装的 NuGet 包。但是,它不会复制他们的.pdb文件。我必须从%UserProfile%\.nuget\packages目录中手动选择它们。

我想知道是否有一个选项可以将 NuGet 包.pdb复制到输出目录?

Nig*_*888 4

越来越多的新方法是使用SourceLink,它允许在调试时按需下载源代码。

注意:正如 Martin Ullrich 所指出的,在撰写本文时,仍然缺少一些功能。

NuGet 符号包和符号服务器

.pdb传统上, NuGet 文件中没有文件.nupkg

相反,这些.pdb文件被放入NuGet 符号包(以 结尾.symbols.nupkg中。

然后,它们可以托管在符号服务器(或本地文件系统)上,而 Visual Studio IDE 又可以通过相应配置来使用它们。另请参阅在 Visual Studio 调试器中指定符号 (.pdb) 和源文件

请注意,并非所有 NuGet 包发布者都会创建符号包或使用 SourceLink - 如果您需要调试没有任何符号包的开源库,也许您应该考虑贡献它们。

  • 我实际上想说,包含 pdb 文件越来越成为处理此问题的更好方法 - 使用 [Source Link](https://github.com/ctaggart/SourceLink) 将 PDB 链接到源代码本身。这消除了对符号服务器的依赖。 (4认同)