在发布后 StackTrace和 StackFrame不工作的解决办法
在C#中使用 StackTrace 或 StackFrame在开发模式下可以正常工作,但是在发布后,发现无法正常运行。经仔细检查和查询资料发现,原来还需要和 *.pdb
程序一起发布。
假设程序名为 app1.exe
,则我们可以在Debug目录下,发现 app1.exe.pdb
文件,在发布的时候要同时将这个文件和可执行文件一起发布,这样就可以保证 StackTrace和StackFrame 正常工作了。其工作原理实际上是程序在遇到相应的错误后,会从 *.pdb
中查询相关信息,然后反馈出来。
注意,如果在程序目录下没有生成 *.pdb
文件,需要进行以下设置,如下图所示。