public void OnActionExecuted(ActionExecutedContext filterContext) { //skip requests (json) without a model if (filterContext.Controller.ViewData.Model == null) { return; } var actionName = filterContext.ActionDescriptor.ActionName; if (actionName == "Index") { return; } var controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName; var controller = filterContext.Controller as RestrictedControllerBase; MenuModel menu = MenuModel.Create(controller.ViewData.Model, controllerName, actionName, controller.SecurityToken.RoleName); menu.BuildMenus(); controller.ViewBag.Menu = menu; }