我得到一个例外大方法。这是一个空引用错误。我将添加一些额外的异常处理和日志记录到这个方法。
如果我将整个内部方法代码包装在一个大的try / catch中,我会得到更好的异常细节吗?或者它会产生相同的结果吗?
当前的异常指向这个大方法的右大括号。
答案 0 :(得分:1)
假设您在同一代码中有相同的异常,try-catch的范围不会产生影响。 callstack将指向您发生错误的方法和代码行。
你可以将你的长方法分解成较小的方法(这有很多原因)以获得更好的callstack。
答案 1 :(得分:0)
try...catch
应该只包含您希望抛出您将要捕获的异常的代码。您在try
中包含的代码越多,不的异常被捕获的可能性就越大。
但是,NullReferenceException
并不是您通常会尝试捕获的内容。您不应该期望您的代码以这种方式失败。相反,你通过做适当的空检查首先抵御它。