Frage

Ist es möglich, die Website-DLL für eine vorkompilierte Website zu aktualisieren, ohne IIS zu stoppen.

Zur Zeit, wenn ich versuche, nur die neue Datei kopieren Sie die Datei überschrieben werden, Alle Benutzer erhalten Laufzeitfehler, während die Datei kopiert wird. Gibt es eine Möglichkeit, dies zu vermeiden?

War es hilfreich?

Lösung

, auch wenn Sie nicht aufhören, jede Änderung an die Datei web.config, IST-Verzeichnis, App_Data oder App_Code wird die .NET-Compiler zwingen auszuführen ...

und Sie werden alle Session-Variablen im Speicher verloren.

Was ich tue, ist verwendet Staat Session in SQL-Modus und wenn Ihr System wie diese eingerichtet ist, Benutzer auf der Website bleibt (nach einer längeren Exposition eine Seite neu laden)

.NET noch die Compiler berufen, um den neuen Satz von Anweisungen zu kompilieren, aber bald es fertig ist, werden alle Sitzungen von SQL Server gelesen werden und weil sie immer noch da (und nicht verloren mit einem Speicher refresh) Benutzer werden bleibt in der Website mit aktuellen Anmeldeinformationen.

Es ist ein wenig langsamer als In-Memory-Sitzungszustand, aber sehr viel zuverlässiger, speziell mit Shared-Hosting :) dies der richtige Weg ist zu increse / decrese die Minuten in der Sitzung, als Shared Hosting nicht erlauben, es zu ändern auch wenn Sie tun

Session.Timeout = 5;

ihre Maschinenkonfiguration außer Kraft setzt alles, was Sie tun, mit SQL-Sitzungsstatus, können Sie Ihre Zeit setzen, wie dies alle von SQL Server hergestellt wird.

Fiel frei diesem Artikel zu lesen, um zu wissen, wie alles gemacht wird.

Hoffe, es hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top