我有一个C# WebService应用程序,我想捕获应用程序抛出的所有未处理异常。
我该怎么做?
* 在每个WebService方法周围放置try..catch语句。这些方法往往是其他类的包装器,所以这并不像听起来那么糟糕,但仍然不好。
* 使用Facade设计模式从父对象派生所有对象,这些父对象基本上在.Execute方法上进行try..catch操作。谢谢,但我还是算了。
* 编写自定义SOAP扩展或HttpModule。这听起来合理,但是......很难。如果这是一个如此酷炫,重要的扩展或HttpModule,难道不会已经有人编写过了吗?
App_Start
处理程序中的某个位置订阅AppDomain.UnhandledException
事件。