第一种:全局异常处理
1.首先常见保存异常的类(就是将异常信息写入到文件中去)
C# 代码 复制
public class LogManager
2.编写一个异常的基类让其继承自controller类
C# 代码 复制
public class BaseExceptionController : Controller
3.编写控制器,让其继承自上面的异常基类
C# 代码 复制
public class ExceptionController : BaseExceptionController
通过上面的方式可以对整个控制器中的action都能进行异常的获取,但是这种方式不太灵活,那么就看第二种方式
第二种:控制器异常处理
这种方式就在需要进行异常处理的controller中重写OnException()方法即可,因为它本身继承了IExceptionFilter接口
C# 代码 复制
public class ExceptionController : Controller
前面两种都是在controller中重写OnException方法,这样只要controller中又异常,那么就会被捕捉并被处理,但是如果我们要针对某个action使用异常处理呢?那么我们就要用到下面的过滤器异常处理来进行。
第三种:过滤器异常处理
C# 代码 复制
namespace MyMVC.Controllers
第四种:路由异常处理
C# 代码 复制
//设置路由参数
第五种:动作异常处理
C# 代码 复制
//首先设置:
<system.web>
<customErrors mode="On">
<error statusCode="404" redirect="/Exception/Missing"/>
</customErrors>
</system.web>
public ActionResult Missing(string str)
http://www.studyofnet.com/news/317.html