risoluzione Windsor PerWebRequest in Application_Start
-
26-09-2019 - |
Domanda
Io sono iniettando HttpContextBase in una classe di caching. HttpContextBase è registrato come PerWebRequest. Interagisco con la classe di caching su ogni richiesta web e questo funziona bene, ma ho anche bisogno di inizializzare la cache all'avvio dell'applicazione.
Capisco che PerWebRequest non funziona in Application_Start però:
castello PerRequestLifestyle non riconosce
Qual è il modo migliore per risolvere questo nella mia situazione?
Soluzione
Non usare roba che dipende per-web-request roba al di fuori della richiesta web.
Se avete bisogno di dipendere da una classe ti sei registrato come PWR Io suggerirei di ottenere un altro componente per quel servizio con diverso stile di vita e di utilizzarlo in Application_Start e utilizzando IHandlerSelector
al ritorno PWR uno quando si è all'interno di una richiesta Web, e l'altro altrimenti
Altri suggerimenti
Prova ad utilizzare un ibrido WebRequest stile di vita / transient .
Per warmup cache quando il contenitore si avvia io di solito uso l'impianto avviabile. Ecco un esempio di come usarlo: http://blog.bittercoder.com/PermaLink, guid, a621ddda-acb5-4afd-84ff-faafb96a2fa1.aspx