/// <summary>
        /// Retrieves information about the action filters.
        /// </summary>
        /// <param name="controllerContext">The controller context.</param>
        /// <param name="actionDescriptor">The action descriptor.</param>
        /// <returns>Information about the action filters.</returns>
        protected override FilterInfo GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor)
        {
            Invariant.IsNotNull(controllerContext, "controllerContext");
            Invariant.IsNotNull(actionDescriptor, "actionDescriptor");

            FilterInfo decoratedFilters  = base.GetFilters(controllerContext, actionDescriptor);
            FilterInfo registeredFilters = Container.GetService <IFilterRegistry>().Matching(controllerContext, actionDescriptor);

            return(ControllerActionInvokerHelper.Merge(Container, decoratedFilters, registeredFilters));
        }
        /// <summary>
        /// Retrieves information about the action filters.
        /// </summary>
        /// <param name="controllerContext">The controller context.</param>
        /// <param name="actionDescriptor">The action descriptor.</param>
        /// <returns>Information about the action filters.</returns>
        protected override FilterInfo GetFilters([NotNull] ControllerContext controllerContext, [NotNull] ActionDescriptor actionDescriptor)
        {
            Invariant.IsNotNull(controllerContext, "controllerContext");
            Invariant.IsNotNull(actionDescriptor, "actionDescriptor");

            FilterInfo filters = base.GetFilters(controllerContext, actionDescriptor);

            ControllerActionInvokerHelper.Inject(Container, filters);

            return(filters);
        }