关于Asp.Net异常处理的问题
比如我在业务逻辑层某一个方法有一个BusinessException异常抛出,表示有业务逻辑错误(比如批准订单时,如果客户的信用额少于订单总额,此异常的Message为:信用额太少,无法批准订单的信息)
在Web层当按钮点击后调用此方法,我希望如果有此异常抛出时,用对话框的形式告诉用户。目前可以通过加Try,Catch可以做到,
但是我不想每次调用业务逻辑层的方法时都要加上这几句话,
故在Page.OnError()中捕获此异常,并输出对话框的JS,但是问题就来了:Asp.net的Page在遇到未处理异常,在OnError会中止此页面的Render,(哪怕是用server.ClearError都不行)。其效果是客户端看到的页面是一个空白页面。
故有什么办法可以让页面照样显示,对话框也能出来,并且是通用处理,而不是每次都要加上Try Catch
(请不要告诉我不用异常来传递业务逻辑错误,已经是既成事实,无法改变)。