Ste*_*lin 9 c# asp.net-mvc controller onexception
我有一个基本控制器类,我将覆盖Controller.OnException处理程序方法,以便为将继承此类的某些类型的控制器提供一般错误处理(这些控制器将返回JSON结果).当控制器引发异常时,永远不会调用OnException方法.有谁看到我做错了什么,还是有更好的方法来处理这种情况?
使用MVC 1.0
基类:
public class APIController : Controller
{
protected override void OnException(ExceptionContext filterContext)
{
//This is never called
filterContext.Result =
new JsonResult();
base.OnException(filterContext);
}
}
Run Code Online (Sandbox Code Playgroud)
继承类:
public class MyController : APIController
{
public AjaxResult ForcedException()
{
throw new SystemException();
}
}
Run Code Online (Sandbox Code Playgroud)
eu-*_*-ne 10
如果我正确理解您的问题 - 您的异常必须在OnException中标记为"已处理".试试这个:
filterContext.ExceptionHandled = true;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9951 次 |
| 最近记录: |