.net - 设置程序集以进行调试

标签 .net debugging .net-assembly visual-studio-debugging pdb

.Net程序集具有用于调试的pdb文件。 PDB文件在其他详细信息中指向确切的源位置。如果我要构建程序集并在本地对其进行调试,那么这很好。当您需要在其他计算机上部署程序集时,问题就开始了。在这种情况下,调试可以通过两种方式完成。 1.您可以将源放置在共享位置,并在VS要求时指向该位置。2.您可以使用源服务器并指向源控件,并将VS配置为使用该位置

Java具有可以直接在实际jar本身旁边部署的源jar,并将其用于调试。这似乎是一个更简单,更整洁的解决方案。我们可以使用.Net(我知道sourcepack提供类似的功能)吗?还是为此提供更好/更简单的解决方案?

最佳答案

.NET程序集实际上不需要PDB! PDB文件不指向确切的源位置,它仅包含关联源文件的GUID!

查看有关how PDB and sources files are linked的更多详细信息

有关更多信息,请参见John Robbins

.NET PDB仅包含两条信息,即源文件名及其行以及本地变量名。所有其他信息已经在.NET元数据中,因此无需在PDB文件中重复相同的信息。

关于.net - 设置程序集以进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10956141/

相关文章:

.net - 更改框架版本导致 : Could not load file or assembly PresentationFramework?

.net - XML 序列化继承类时出现 InvalidOperationException

c# - 如何在 ASP.NET 中使用配置文件?

c# - 如何在.Net最新版本中获取某个文件类型的IPreviewHandler

sql - 在MS Access中管理和调试SQL查询

sql-server - MSSQL加载程序集错误

java - 如何在 fedora 中 mvndebug

c++ - procdump.exe 显示的异常是什么意思?

asp.net-core - 单独程序集中的 EditorTemplate 模板

.net - 当 objective-c PU 是 "Any"并且程序集有两个版本 x32 和 x64 时会发生什么?