我需要在try / catch中包装Trace.TraceError吗?

时间:2014-07-25 10:19:42

标签: c# system.diagnostics

我在try / catch中使用System.Diagnostics.Trace #TraceError来跟踪错误。通过查看TraceError的实现,看起来没有真正捕获来自侦听器的错误。这是否意味着我应该编写如下代码来避免日志记录传播给调用者的错误:

catch (Exception e) {
    try {
        Trace.TraceError(e);
    } catch {
        // Do nothing
    }
}

1 个答案:

答案 0 :(得分:3)

没有记录

Trace.TraceError抛出异常,因此不需要catch它。即使记录了抛出异常,也不应该catch异常并且什么也不做。

让异常加注,只有这样你才有机会找到错误。

请参阅Why is try {...} finally {...} good; try {...} catch{} bad?