Perché FileSystemWatcher azzerare le nostre sessioni di siti web?
-
18-09-2019 - |
Domanda
Abbiamo un sito web ASP.NET 2.0 con una configurazione avanzata che non è adatta a da un Web.config standard. Invece stiamo memorizzare la configurazione nel nostro schema XML nella cartella / / bin, e abbiamo un oggetto Singleton, che memorizza nella cache questo config e utilizza un FileSystemWatcher per rilevare gli aggiornamenti. Questa logica si trova in una libreria di classi separato che viene usato solo dal sito web.
Il problema è che, ogni volta che modificare questa configurazione, tutte le sessioni utente vengono resettati, come se avessimo riavviato il pool di applicazione in IIS! Stiamo usando single e vari altri meccanismi di caching che funzionano bene, ma per qualche motivo solo quella con le bombe FSW fuori. Tutte le idee sarebbe apprezzato!
Soluzione
Se il file XML è sotto la cartella BIN , quindi applicazione web sarà automaticamente riavviato quando qualcosa cambia in quella cartella.
Il Web Application sarà anche RESTART se web.config o Machine.Config sono cambiato o modificato.