I need to get the controller who triggers a filter attribute.
I have the following filter:
public override void OnException(HttpActionExecutedContext filterContext) {     if (filterContext == null) {         throw new ArgumentNullException("filterContext");     }       if (filterContext.Exception != null) {          // string controllerName = (string) filterContext.....??          // string actionName = (string) filterContext.....?          HttpResponseMessage msg = new HttpResponseMessage(HttpStatusCode.InternalServerError) {             Content = new StringContent("An unhandled exception was thrown by Customer Web API controller."),                 ReasonPhrase = "An unhandled exception was thrown by Customer Web API controller."         };          filterContext.Response = msg;       }  }   In traditional MVC this was easy by doing:
string controllerName = (string) filterContext.RouteData.Values["controller"]; string actionName = (string) filterContext.RouteData.Values["action"];   Any clue? Appreciate it
Finally I found it:
filterContext.ActionContext.ControllerContext.ControllerDescriptor.ControllerName filterContext.ActionContext.ActionDescriptor.ActionName   Thanks
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With