10

我正在开发一个 MVC.NET 2.0 项目,我试图在控制器的 OnException 方法中放入一些特殊的错误处理逻辑。基本上,我希望能够确定引发未处理异常的控制器方法的结果类型,以便我可以根据类型返回某种格式的错误数据(json 表示 JsonResult,html 表示 ActionResult)。谁能指出我确定这种类型的方法?我将不胜感激任何帮助。

提前致谢

4

1 回答 1

8

假设您没有更改默认路由:

protected override void OnException(ExceptionContext filterContext)
{
    var action = filterContext.RouteData.Values["action"].ToString();
    var type = filterContext.Controller.GetType();
    var method = type.GetMethod(action);
    var returnType = method.ReturnType;
    //...do whatever here...
}

祝你好运!

于 2010-08-06T20:27:12.910 回答