Определите тип результата в OnException контроллера

Я работаю над MVC.NET 2,0 проекта, где я пытаюсь вставить некоторую специальную логику обработки ошибок в методе OnException контроллера. В основном я хочу смочь определить тип результата метода контроллера, в котором было повышено необработанное исключение, так, чтобы я мог возвратить ошибочные данные в определенном формате, зависящем от типа (json для JsonResult и HTML для ActionResult). Кто-либо может указать на меня на способ определить тот тип? Я был бы очень признателен за любую справку.

Заранее спасибо

8
задан Chris Dellinger 6 August 2010 в 15:25
поделиться

1 ответ

Предполагая, что вы не меняли маршрутизацию по умолчанию:

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...
}

Удачи!

7
ответ дан 5 December 2019 в 21:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: