【问题标题】:.Net Exception detail.Net 异常详细信息
【发布时间】:2011-03-20 23:25:49
【问题描述】:

如何获得 .net 框架抛出的详细异常。下面的日志片段显示出了问题,但是什么?

在 mscorlib.dll 中发生了“System.IO.FileNotFoundException”类型的第一次机会异常

不幸的是,我无法捕获此异常,因此无法调试。有没有办法获得有关此类异常的详细信息?可能是一些工具等。

【问题讨论】:

  • 为什么抓不到异常?
  • 有时,异常及其消息可能很复杂、令人困惑、不清楚,或者只是毫无用处。这不是其中之一。
  • @Ian - 因为访问文件的不是我,而是 .net 框架。

标签: .net visual-studio exception


【解决方案1】:

您使用的是 Visual Studio (2008) 吗?
然后,您可以使用Debug/Exceptions 菜单中的“异常”选项对话框捕获任何异常,即使它没有由您的代码处理。

【讨论】:

    【解决方案2】:

    首先,FileNotFoundExceptions 是直截了当的。

    其次,当任何代码依赖于读取磁盘上的文件时,使用 try...catch 块。

    有关更多信息,请阅读有关捕获异常和做什么(通常告诉用户找不到文件)。

    【讨论】:

      【解决方案3】:

      我认为还值得研究第一次和第二次机会例外之间的区别。 http://support.microsoft.com/kb/105675 详细解释了它,但简而言之,在抛出异常的那一刻,就会抛出第一次机会异常。那是在尝试通过 try/catch 语句处理它之前。这可能意味着框架捕获了异常并做了其他适当的事情,等等。

      这通常意味着第一次机会异常无需担心,只需担心其他人的代码会在您的代码中抛出异常,否则请相信他们的错误处理。

      【讨论】:

        【解决方案4】:

        您拥有日志这一事实意味着某些东西正在记录异常。你用什么来记录异常?听起来好像它可能只记录Exception.Message 而不是Exception.ToString()

        【讨论】:

          猜你喜欢
          • 2013-03-18
          • 2013-10-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多