我正在开发一个 MVC.NET 2.0 项目,我试图在控制器的 OnException 方法中放入一些特殊的错误处理逻辑。基本上,我希望能够确定引发未处理异常的控制器方法的结果类型,以便我可以根据类型返回某种格式的错误数据(json 表示 JsonResult,html 表示 ActionResult)。谁能指出我确定这种类型的方法?我将不胜感激任何帮助。
提前致谢
我正在开发一个 MVC.NET 2.0 项目,我试图在控制器的 OnException 方法中放入一些特殊的错误处理逻辑。基本上,我希望能够确定引发未处理异常的控制器方法的结果类型,以便我可以根据类型返回某种格式的错误数据(json 表示 JsonResult,html 表示 ActionResult)。谁能指出我确定这种类型的方法?我将不胜感激任何帮助。
提前致谢
假设您没有更改默认路由:
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...
}
祝你好运!