Как использовать ActionFilter один раз для выполнения на всех контроллерах

У меня есть ситуация, когда мне нужно, чтобы один фильтр выполнялся перед каждым вызовом API, но в dot net вы должны написать этот фильтр над каждым контроллером. [имя фильтра действий].

У меня написано так много контроллеров, и писать этот тег над каждым контроллером довольно беспокойно. Есть ли способ, чтобы этот фильтр вызывался перед каждым выполнением контроллера, не записывая его над каждым контроллером. Как и при загрузке Java Spring, нам не нужно писать аннотацию нашего фильтра над каждым контроллером, который он просто запускает перед вызовом API.

Я шрифт знаю, похож ли этот вопрос на уже заданный вопрос, если да, пожалуйста, скажите мне, ребята, я здесь новенький.

То, что вы хотите, называется глобальным фильтром (это даже не упоминается в первом ответе ниже). Это ужасно. Нам нужен не просто материал, нам также нужно его (техническое) название, чтобы мы могли говорить или обсуждать его, узнавать о нем больше... Действительно, когда вы узнали о фильтрах в ядре asp.net, у вас должно было быть известно об этом термине. Всегда старайтесь сначала прочитать документацию (я знаю, что это очень долго и требует много времени, но оно того стоит), прежде чем использовать его.

Hopeless 24.12.2020 09:12

Я понимаю вашу точку зрения, но дело в том, что я Java-разработчик, и мне сказали сделать это только на один день, поэтому я собрал так много информации и каким-то образом сумел задать вопрос, который почти понятен @Hopeless

Sanjay Sahani 25.12.2020 15:53
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
2
824
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Для ядра asp.net 2.x попробуйте следующее:

services.AddMvc(options =>
{
    options.Filters.Add(new CustomActionFilter());  
    //or 
    //options.Filters.Add(typeof(CustomActionFilter));      
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

Ссылка:

https://learn.microsoft.com/en-us/aspnet/core/mvc/controllers/filters?view=aspnetcore-2.2#filter-scopes-and-order-of-execution-1

Для ядра asp.net 3.x попробуйте следующее:

services.AddControllers(config =>
{
    config.Filters.Add(new CustomActionFilter());
});

Ссылка:

https://learn.microsoft.com/en-us/aspnet/core/mvc/controllers/filters?view=aspnetcore-5.0#filter-scopes-and-order-of-execution

Другие вопросы по теме