stacktrace信息在.NET发布模式构建中可用吗?
如果我选择发布模式来构建dll,stacktrace信息是否仍然可用stacktrace信息在.NET发布模式构建中可用吗?,.net,debugging,stack-trace,debug-symbols,.net,Debugging,Stack Trace,Debug Symbols,如果我选择发布模式来构建dll,stacktrace信息是否仍然可用 如果是,那么在发布模式下哪些信息不可用?如果在异常上下文中引用堆栈跟踪,则是,堆栈跟踪信息在发布模式下仍然可用。在发布模式中丢失的是完整的调试符号,它为堆栈跟踪提供源代码序列点信息。这允许堆栈跟踪识别特定堆栈跟踪项引用的特定代码行 此外,在启用优化的发布模式下,代码可以内联,从而更改运行时代码的结构。虽然运行时版本代码显然更为优化,但它与实际编写的代码行的关系较小。您始终拥有堆栈跟踪信息——这是与生成模式无关的运行时功能——但
如果是,那么在发布模式下哪些信息不可用?如果在异常上下文中引用堆栈跟踪,则是,堆栈跟踪信息在发布模式下仍然可用。在发布模式中丢失的是完整的调试符号,它为堆栈跟踪提供源代码序列点信息。这允许堆栈跟踪识别特定堆栈跟踪项引用的特定代码行
此外,在启用优化的发布模式下,代码可以内联,从而更改运行时代码的结构。虽然运行时版本代码显然更为优化,但它与实际编写的代码行的关系较小。您始终拥有堆栈跟踪信息——这是与生成模式无关的运行时功能——但行号和源文件名通常在发布生成堆栈跟踪中不可用 通过更改生成配置以创建完整的程序数据库(.pdb)文件,可以在发布生成堆栈跟踪(包括异常)中获取行号和源文件名。要在Visual Studio中执行此操作,请执行以下操作: