编写异常处理代码的更好方法

时间:2013-03-01 11:22:50

标签: c#

在我的工作中,几乎60%到70%的代码用于异常处理和记录这些异常。 休息30%到40%是商业逻辑。

有没有办法使用EntLib或可在此处应用的任何其他概念提取异常处理部分?

问候。

1 个答案:

答案 0 :(得分:1)

这很容易。

执行。不。抓住。那。异常。

http://www.codeproject.com/Articles/125118/Do-NOT-catch-that-exception

问题是所有那些只记录异常的异常块都不是很有用。大多数(如果不是全部)层都有方法允许您以结构化方式记录异常(WCF具有IHErrorHandler,ASP.NET可以使用自定义IHttpModule,ASMX可以使用自定义{{1} ,WinForms / WPF有SoapExtension)。这使得所有其他try / catch / log块完全没用。

如果您能真正处理它们(即履行方法合同),则只捕获异常。也就是说,如果一个方法应该返回Application.ThreadException只捕获异常,如果你可以处理错误,那么返回一个User