public void Configure(FilterInfo filterInfo, ControllerContext controllerContext, ActionDescriptor actionDescription) { if (removeFilters != null) { foreach (var type in removeFilters) { filterInfo.RemoveFilters(type); } } if (addFilters != null) { filterInfo.AddFilters(addFilters); } if (addFilterDelegate != null) { var ctx = new ConditionalFilterContext(controllerContext, actionDescription, filterInfo); filterInfo.AddFilters( addFilterDelegate.GetInvocationListTyped() .Select(del => del(ctx)).NotNull()); } var afc = actions?.TryGetC(actionDescription.ActionName); if (afc != null) { afc.Configure(filterInfo, controllerContext, actionDescription); } }
public void Configure(FilterInfo filterInfo, ControllerContext controllerContext, ActionDescriptor actionDescription) { if (removeFilters != null) { foreach (var type in removeFilters) { filterInfo.RemoveFilters(type); } } if (addFilters != null) { filterInfo.AddFilters(addFilters); } if (addFilterDelegate != null) { var ctx = new ConditionalFilterContext(controllerContext, actionDescription, filterInfo); var filters = addFilterDelegate.GetInvocationListTyped().Select(del => del(ctx)).NotNull().ToList(); filterInfo.AddFilters(filters); } }