FilterAttribute Заказ не работает - PullRequest
5 голосов
/ 09 ноября 2009

У меня есть 2 атрибута, которые я использую в контроллерах моего приложения MVC. Атрибут A расширяет System.Web.Mvc.AuthorizeAttribute , а Атрибут B расширяет System.Web.Mvc.ActionFilterAttribute . Я хочу, чтобы AttributeB всегда запускался первым.

Я перепробовал все возможные комбинации Order на основе этой статьи , но AttributeA всегда запускается перед AttributeB. Кто-нибудь может помочь?

1 Ответ

6 голосов
/ 09 ноября 2009

Если вы посмотрите на метод System.Web.Mvc.ControllerActionInvoker.InvokeAction с отражателем, вы увидите, что все фильтры, реализующие IAuthorizationFilter , вызываются до атрибутов, происходящих из ActionFilterAttribute , и это потому, что авторизация выполняется перед вызовом действие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...