C# 无法单步进入加载了符号的Nuget库
我已将我的Nuget库上载到Azure Devops工件中。它还将符号文件(.PDB)发布到Azure Devops符号服务器。我在VisualStudio中添加了设置,以便按照前面提到的说明从Azure Devops符号服务器加载符号 在运行时,当我尝试单步进入(Nuget库的)代码时,我会得到一个错误,说找不到.cs文件的路径。我尝试过各种解决方案,比如取消选中启用即时代码、启用.Net Framework源代码步进等,但没有成功 问题是:C# 无法单步进入加载了符号的Nuget库,c#,debugging,azure-devops,visual-studio-2019,nuget-package,C#,Debugging,Azure Devops,Visual Studio 2019,Nuget Package,我已将我的Nuget库上载到Azure Devops工件中。它还将符号文件(.PDB)发布到Azure Devops符号服务器。我在VisualStudio中添加了设置,以便按照前面提到的说明从Azure Devops符号服务器加载符号 在运行时,当我尝试单步进入(Nuget库的)代码时,我会得到一个错误,说找不到.cs文件的路径。我尝试过各种解决方案,比如取消选中启用即时代码、启用.Net Framework源代码步进等,但没有成功 问题是: 我已经使用版本配置构建了nuget包。这就是我无
- 我已经使用版本配置构建了nuget包。这就是我无法进入代码的原因吗?我认为在VS中加载PDB文件应该有助于克服这一问题。请告知
Release
模式构建的nuget包,它也应该可以工作。请查看以下三个提示:
1.确保在使用索引源和将符号发布到任务时选择与我相同的设置
2.在Visual Studio中,添加新的符号服务器(拥有管道并承载工件提要的组织):
3.取消选中debug=>general中的enable just my code:
然后在我这方面效果很好。希望我的步骤能有所帮助。有关此主题的更多信息,您可以参考。调试您的程序并打开“模块”窗口(调试)► 窗户► 模块)。查找此表中与DLL对应的行,“符号文件”列是否已填充?进一步-如果没有为DLL填充“符号文件”列,则获取DLL的路径,并在资源管理器中浏览到包含DLL的目录,PDB文件在那里吗?我在调试时检查了模块窗口,它显示符号已加载。我检查了pdb文件的路径,在该路径中找到了实际的.pdb文件。哦,我错过了你将包构建为“发布”-是的,尝试一个“调试”构建。我尝试过调试构建,它成功了。但是我如何使用调试构建进行生产呢?这很有魅力。谢谢我丢失了启用源服务器支持复选框。我再次收到错误。这次它说-文件“d:\a\1\s\\.cs”不存在。这是CI管道托管代理的路径。我有上面提到的所有设置。奇怪的是,当我用.NETFrameworkNuget软件包测试时。它弹出了一个窗口,询问是否从sourceserver下载,在我选择了服务器之后,它工作正常。然而,当我尝试使用.NetStandard项目nuget包进行调试时,它没有给我下载的选项,只是给了我上述错误。请检查:当前未为可移植的.pdb文件启用源索引,因为SourceLink不支持经过身份验证的源存储库。目前的解决方法是将生成配置为生成完整的.pdb文件。
只是猜测,我认为您的问题与此有关,因为.net核心项目将默认使用门户模式生成!解决方法是将调试信息设置为完整。(Project=>Properties=>Build=>Advanced=>Debug-information)注意:如果要使用发行版包进行调试,需要确保使用完整模式而不是调试完整模式生成发行版。(项目=>属性=>发布配置=>上述类似步骤)