Starten Sie ASP.NET-Anwendung, wenn Ordnerinhalte ändern
Frage
Ich schreibe eine Web-Anwendung, die „Plug-in“ hat. Die Plugins werden DLL-Dateien sein, die ihre Funktionalität durch vordefinierte Schnittstellen ‚n Zeug exportiert. All DLL-Dateien sind in einem Ordner namens „Plugins“ und die ASP.NET-Anwendung lädt sie alle beim Start (unter Verwendung Assembly.LoadFrom).
Das Problem ist, dass bei der Entwicklung, dieser Plugins ziemlich oft ändern werden (die alle Funktionen in dem Plugins ist, die Website selbst ist nur ein Skelett). So muß ich einen Weg, um automatisch die Anwendung neu starten, wenn die DLL-Dateien zu ändern.
Wie kann ich das tun?
Lösung
Wenn die Plugin-Verzeichnis unter dem Verzeichnis Bin, wird die Web-App automatisch neu gestartet werden, wenn sich etwas ändert.
Andere Tipps
Die Filesystemwatcher Klasse ist eine allgemeine Lösung auf diese Art von Problemen, und HttpRuntime.UnloadAppDomain();
ist eine Möglichkeit, die App neu zu starten. Ich denke, dass mehr Forschung / Erklärung erforderlich ist: Es gibt viele mögliche Lösungen
Bearbeiten : Probling Pfade. Nizza Antwort.