Как зарегистрировать компонент Autofac для http-запроса в web.config? - PullRequest
2 голосов
/ 10 октября 2011

В приложении MVC3 у меня есть пользовательская реализация IPrincipal.

Я хочу зарегистрировать его в web.config и затем внедрить его в конструкторы с помощью Autofac.

XML-конфигурация Autofac имеет атрибут«instance-scope», но он не поддерживает «per-http-request».

Любые идеи, как я могу зарегистрировать компонент для http-области в web.config?

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

Ответы [ 2 ]

3 голосов
/ 19 октября 2011

Как сказал мне Николас Блюмхардт из команды Autofac, за всю жизнь следует использовать.

При работе в ASP.NET он практически эквивалентен HTTP-запросу.

1 голос
/ 11 октября 2011

Насколько я вижу из источника, регистрация на http-запрос в конфигурации XML не поддерживается. Как вы упомянули, допускаются только три значения instance-scope (для каждой зависимости, для одного экземпляра и для всей жизни).

Также, глядя на то, как работает per-http-request scoping, он использует регистрационный вызов InstancePerMatchingLifetimeScope с ключом httpRequest. Опять же, нет способа конфигурации XML для настройки «времени действия соответствия».

Путь - настройка через код.

...