Вопрос

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

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

Замок PerrequestLilefestyle не распознает

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

Это было полезно?

Решение

Не используйте вещи, которые зависят от вещей на веб-запрос вне веб-запроса.

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

Другие советы

Попробуйте использовать An Гибридный WebRequest / Преходящий образ жизни.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top