CSharp类的全局异常
WinForm有他自带的全局异常
我自己定义的类如何实现这种效果
例如我的类
class temp{
public void say1(){throw new Exception("say1Exception");}
public void say2(){throw new Exception("say2Exception");}
}
我想实现的效果是
当say1异常的时候 我能够捕获到这个Exception的对象
但是我又不想每一个方法都写Try-Catch
就像要一个类似WinForm全局异常的方式来实现
------解决方案--------------------
"每一个方法都写Try-Catch"不是好的编程方式,因为过多的Try-Catch会掩盖错误,常常使问题积累到全盘崩溃的结局。
另外,全局异常处理不是万用灵药。“全局异常”处理中,真正能用的只有写异常记录,然后
让程序退出。理由是,全局处理中没有足够的信息来理解异常,而不能正确理解异常,就意味着不能正确地处理异常。如果不让程序退出,同样会使问题积累到全盘崩溃。
因此,你可以使用AppDomain.UnhandledException事件来
记录异常,而AppDomain.UnhandledException的事件处理不能阻止程序退出。
------解决方案--------------------http://msdn.microsoft.com/zh-cn/library/vstudio/system.appdomain.unhandledexception.aspx