如何调试并单步执行已创建并在本地托管的 NuGet 包中的代码?



我最近将我们的一些.dll转换为NuGet,它们运行得很好,除非调试对包中代码的调用时明显被跳过。所以我开始阅读PBD文件以及如何创建符号包(例如MyPackage.symbols.nupkg)。我知道源代码包含在nupkg的.symbols版本中,但我不知道如何使用它来使其工作。我真的不想把我们的pbd放在SymbolSource.org上-我只是在网络共享上有我的NuGet包,所以我试着把.pbd文件包括到NuGet包中,但没有成功,所以我尝试用NuGet包指定-Symbols选项,这只会创建两个版本的nupkg-一个是普通的nupk,另一个是sybols.nupkg,但是当我使用nugetinit时,它不会安装符号包。所以我手动将其复制到文件共享中,但调试仍然不起作用。我甚至尝试将symbols.nupkg重命名为nupkg,并将其推到共享中,因为它包含源代码,但这也不起作用。我如何调试并进入我创建的本地托管的NuGet包中的代码?

您可以将assembly.pdb文件和源文件作为src文件添加到Nuget Package中。您可以使用NuGet软件包资源管理器添加它们。

然后在"解决方案"->"属性"->"调试源文件"中添加文件路径,然后可以使用源代码调试自己的包。

详细的步骤,您可以参考下面的线程。

是否可以在网络共享上的NuGet本地提要中同时托管常规包和符号包?

最新更新