在发布模式下不部署PDB文件时,异常行号不会显示。

8 浏览
0 Comments

在发布模式下不部署PDB文件时,异常行号不会显示。

在不使用pdb文件的情况下发布webservice时,是否有可能获取异常行号?

0
0 Comments

在发布模式下,如果没有部署PDB文件,很难在异常中获取到行号信息。PDB文件包含了将源代码转换为编译输出所需的详细信息。如果没有PDB文件,你需要使用某种追踪技术来将异常与代码的行号关联起来,比如在异常消息中指定详细信息或使用错误代码。

使用这些技术的问题是,你需要捕获不属于你的代码的异常,并将其包装在另一个异常中。这被认为是一种不好的做法,因为很容易吞噬异常或错误地抛出被包装的异常,导致丢失堆栈跟踪信息。

关于这个问题,可以参考Stack Overflow上的文章《Release generating .pdb files, why?》(链接:https://stackoverflow.com/questions/5457095)获取更多信息。

解决这个问题的方法是在发布模式下部署PDB文件。这样,当发生异常时,可以直接从PDB文件中获取到源代码的行号信息,而不需要使用追踪技术或包装异常。

0