Eleganckie samobójstwo aplikacji ASP.NET
Czasami może się zdarzyć, że nasza aplikacja ASP.NET odczuje potrzebę popełnienia samobójstwa i narodzenia się na nowo. Kiedy? Na przykład, gdy zmieni się jakiś plik konfigurujący aplikację (nie dotyczy to web.config, którego zmiana powoduje automatyczny restart) lub gdy chcemy w sekcji administracyjnej witryny dać możliwość administratorowi wykonania tego na życzenie. Wówczas pojawia się pytanie, jak to zrobić elegancko i zgodnie z lege artis?
Rozwiązanie łopatologiczne polega na modyfikacji pliku web.config (choćby metodą File.SetLastWriteTime) i pozwolenie, żeby środowisko ASP.NET zajęło się resztą.
Rozwiązanie bardziej eleganckie: HttpRuntime.UnloadAppDomain(). Wówczas środowisko kulturalnie kończy swoje działanie, a aplikacja jest uruchamiana ponownie przy następnym żądaniu. Wady? Niestety, wymaga full trust.