Как получить список зарегистрированных GlobalFilters в ActionFilter - PullRequest
0 голосов
/ 07 апреля 2019

Я создал пользовательский ActionFilterAttribute и хочу что-то сделать, когда действие декорируется каким-либо атрибутом. Я могу получить атрибут метода действия и атрибут контроллера. но не могу найти атрибуты, которые регистрируются в FilterConfig.

Как их найти?

Мой код:

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new SomeFilterOrAttribute());
} 

и

public class BeforeActionAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        var actionAttributes = filterContext.ActionDescriptor.GetCustomAttributes(true);
        var controllerAttributes = filterContext.ActionDescriptor.ControllerDescriptor.GetCustomAttributes(true);

        // How can get list of registered global filters or attributes? 
    }
}

1 Ответ

1 голос
/ 07 апреля 2019

GlobalFilters класс позволяет получать коллекцию глобальных фильтров, а также изменять ее

//requires "using System.Linq"
var globalFilters = GlobalFilters.Filters.ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...