protected void RegisterActionFilter(string action, string controller, IActionFilter filter) { ActionFilters.Add(new DynamicActionFilter() { Action = action, Controller = controller, Filter = filter }); }
/// <summary> /// Adds the action filter. /// </summary> /// <param name="filter">The filter.</param> protected virtual void AddActionFilter(IActionFilter filter) { if (!ActionFilters.Contains(filter)) { ActionFilters.Add(filter); } }
private void AddFilter(Filter filter) { if (filter == null) { throw new ArgumentNullException(nameof(filter)); } var instance = filter.Instance; if (instance is IAuthenticationFilter authentication) { AuthenticationFilters.Add(new FilterInfo <IAuthenticationFilter> { Filter = authentication, Scope = filter.Scope, Order = filter.Order }); } if (instance is IAuthorizationFilter authorization) { AuthorizationFilters.Add(new FilterInfo <IAuthorizationFilter> { Filter = authorization, Scope = filter.Scope, Order = filter.Order }); } if (instance is IActionFilter action) { ActionFilters.Add(new FilterInfo <IActionFilter> { Filter = action, Scope = filter.Scope, Order = filter.Order }); } if (instance is IResultFilter result) { ResultFilters.Add(new FilterInfo <IResultFilter> { Filter = result, Scope = filter.Scope, Order = filter.Order }); } if (instance is IExceptionFilter exception) { ExceptionFilters.Add(new FilterInfo <IExceptionFilter> { Filter = exception, Scope = filter.Scope, Order = filter.Order }); } }