Resolução de Windsor Perwebrequest em Application_start
-
26-09-2019 - |
Pergunta
Estou injetando httpcontextbase em uma classe de cache. HttpContextBase é registrado como Perwebrequest. Eu interajo com a classe de cache em cada solicitação da web e isso funciona bem, mas também preciso inicializar o cache no início do aplicativo.
Entendo que o Perwebrequest não funciona no Application_start:
castelo perrequestlifestyle não reconhece
Qual é a melhor maneira de resolver isso na minha situação?
Solução
Não use coisas que dependem de coisas por solicitação por web fora da solicitação da Web.
Se você precisar depender de uma aula que você registrou como PWR, sugiro obter outro componente para esse serviço com estilo de vida diferente e usá -lo no Application_start e usar IHandlerSelector
para devolver o PWR um quando você está dentro de uma solicitação da web e o outro de outra forma
Outras dicas
Tente usar um estilo de vida híbrido de webrequest/transitório.
Para aquecer caches quando o recipiente começar, geralmente uso a instalação inicial. Aqui está um exemplo de como usá -lo:http://blog.bittercoder.com/permalink,guid,a621ddda-acb5-4afd-84ff-faafb96a2fa1.aspx