#autofac
#autofac
Вопрос:
builder.RegisterFilterProvider();
Это может ввести свойство в filter write для такого действия, как:
[TestFilter]
public ActionResult SomeAction(){...}
Но не удается внедрить глобальный регистр фильтра в global.asax, например
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new TestFilterAttribute());
}
Могу ли я сделать что-то еще?
Комментарии:
1. Здравствуйте, Добро пожаловать в SO. Не совсем понятно, о чем вы здесь спрашиваете. Если вы можете рассказать нам более подробно о том, что вы пытаетесь сделать, возможно, мы сможем вам помочь.
Ответ №1:
установите свойство при регистрации глобального фильтра в global.asax
filters.Add(new TestFilterAttribute() { TObj=AutofacDependencyResolver.Current.ApplicationContainer.Resolve<ITest>() });
я пытаюсь каким-то образом
builder.RegisterType<TestFilterAttribute>().PropertiesAutowired()
builder.RegisterType<TestFilterAttribute>().OnActivating(x=>x.Instance.TObj=x.Context.Resolve<ITest>())
builder.RegisterType<TestFilterAttribute>().WithProperty("TObj",new Test())
все вышеперечисленное не работает
или
builder.RegisterType<TestFilterAttribute>().PropertiesAutowired();
и фильтровать регистр с помощью кода, подобного:
filters.Add(AutofacDependencyResolver.Current.ApplicationContainer.Resolve<TestFilterAttribute>());