MVC3异常处理的方法
1、采用内置的HandleErrorAttribute对象,跳转到指定错误页
示例:http://www.cnblogs.com/TomXu/archive/2011/12/15/2285432.html
2、实现IExceptionFilter过滤器接口
其实方法1中也是实现的IExceptionFilter接口。但此方法中可以对异常信息进行处理,如记录异常日志、跳转到指定页面等
2.1 创建一个BaseController类,集成于Controller类,并实现IExceptionFilter的OnException方法。该方法的ExceptionContext参数包含http上下文数据及异常相关信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 |
public
class BaseController : Controller { protected
override void OnException(ExceptionContext filterContext) { //if (!filterContext.ExceptionHandled && filterContext.Exception is ArgumentOutOfRangeException) if
(!filterContext.ExceptionHandled) { filterContext.Result = new
RedirectResult( "~/Error.htm" ); filterContext.ExceptionHandled = true ; } base .OnException(filterContext); } } |
2.2 所有的Controller类继承于BaseController类,这样挡在Controller中发生异常时就会触发OnException方法
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。