关于c#:我需要在try / catch中包含Trace.TraceError吗?

Do I need to wrap Trace.TraceError inside a try/catch?

我正在尝试/捕获中使用System.Diagnostics.Trace TraceError来跟踪错误。通过查看traceError的实现,似乎没有真正捕获到来自侦听器的错误。这是否意味着我应该像下面这样编写代码,以避免日志记录向调用方传播错误:

1
2
3
4
5
6
7
catch (Exception e) {
    try {
        Trace.TraceError(e);
    } catch {
        // Do nothing
    }
}

trace.traceError没有记录为抛出异常,因此不需要catch它。即使文档中记录了抛出异常,您也不应该将cx1〔0〕作为异常,什么也不做。

让例外情况出现,只有这样你才有机会发现问题所在。

看到为什么是Try…finally…good;Try…catch bad?