У меня есть собственный класс атрибутов, полученный из AuthorizationAttribute, который выполняет пользовательскую безопасность при действиях контроллера. Метод OnAuthorizationCore зависит от различных других компонентов (например, DAL), чтобы судить, может ли пользователь вызывать действие.
Я использую Autofac для инъекций зависимостей. ExtensibleActionInvoker утверждает, что может выполнять инъекцию свойств в фильтрах действий. Настройка свойств атрибута во время выполнения (что кажется плохим идеей) будет работать в простой unit test, но на занятом многопоточном веб-сервере он обязательно пойдет не так, и поэтому эта идея кажется анти-шаблоном. Отсюда этот вопрос:
Если мой атрибут AuthorizationAttribute зависит от других компонентов, чтобы работать правильно, что это правильный шаблон [architecture] для достижения этого?
то есть. AuthorizationAttribute зависит от IUserRepository... как это должно быть разрешено?