Внедрение зависимости в CustomAttribute с использованием Castle Windsor

В моем приложении ASP.Net MVC я реализовал Custom ActionFilter для авторизации пользователей.

Я использую CastleWindsor для обеспечения внедрения зависимостей в все контроллеры следующим образом:

  protected virtual IWindsorContainer InitializeServiceLocator()
    {
        IWindsorContainer container = new WindsorContainer();
        ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container));

        container.RegisterControllers(typeof(HomeController).Assembly);
        ComponentRegistrar.AddComponentsTo(container);

        ServiceLocator.SetLocatorProvider(() => new WindsorServiceLocator(container));

        return container;
    }

В моем CustomAttribute, Мне нужна зависимость, которая используется всеми моими контроллерами, однако я не могу использовать инъекцию на основе конструктора в атрибуте.

Так какой же здесь самый чистый выход? Как я могу предоставить зависимость?

15
задан BonyT 31 May 2011 в 11:00
поделиться