Виндзор PerWebRequest разрешение в Application_Start - PullRequest
2 голосов
/ 11 июня 2010

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

Я понимаю, что PerWebRequest не работает в Application_Start, хотя:

замок PerRequestСтайл не распознается

Как лучше всего решить эту проблему в моей ситуации?

Ответы [ 3 ]

4 голосов
/ 25 июня 2010
4 голосов
/ 11 июня 2010

Не использовать материал, который зависит от содержимого каждого веб-запроса, кроме веб-запроса.

Если вам нужно зависеть от класса, который вы зарегистрировали как PWR, я бы предложил получить другой компонент для этого сервиса с другимобраз жизни и использование его в Application_Start и использование IHandlerSelector для возврата PWR один, когда вы находитесь в веб-запросе, а другой в противном случае

0 голосов
/ 12 июня 2010

Для разогрева кешей при запуске контейнера я обычно использую средство запуска.Вот пример того, как его использовать: http://blog.bittercoder.com/PermaLink,guid,a621ddda-acb5-4afd-84ff-faafb96a2fa1.aspx

...