【问题标题】:In which case i must reset the stack trace by throw ex? [closed]在这种情况下,我必须通过 throw ex 重置堆栈跟踪? [关闭]
【发布时间】:2019-06-24 06:56:07
【问题描述】:

我阅读了 throw 和 throw ex 并了解其中的区别。 当我使用 throw ex 重置堆栈跟踪。 现在我有一个问题,为什么要重置堆栈跟踪?在这种情况下我必须这样做吗? 有人能写一个简单的例子来理解吗?

【问题讨论】:

  • 你永远必须这样做,而且通常——如果不是总是——这样做是个坏主意,因为你会丢失信息。但是,您可以将您的异常包装成一个新的,这可能更合适。
  • 话虽如此,您的问题可能会结束,因为这里没有“正确”或“错误”的答案。

标签: c# .net exception


【解决方案1】:

当您触发一些 HTTP 请求时,您可能会遇到这种情况,这表明您尚未通过身份验证(例如用户名和密码不正确)。通常,整个调用堆栈是无关紧要的,因为它是一个受控异常。

您可以创建一个新异常并删除原始异常,但我个人总是会提供整个调用堆栈。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-18
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    • 2018-08-20
    相关资源
    最近更新 更多