Перезапустите приложение ASP.NET при изменении содержимого папки - PullRequest
2 голосов
/ 01 декабря 2008

Я пишу веб-приложение, которое будет иметь «плагины». Плагины будут .DLL-файлами, которые будут экспортировать свою функциональность через предопределенные интерфейсы и прочее. Все файлы .DLL находятся в папке «Плагины», и приложение ASP.NET загружает их все при запуске (с помощью Assembly.LoadFrom).

Проблема в том, что при разработке эти плагины меняются довольно часто (вся функциональность в плагинах, сам сайт - это просто скелет). Таким образом, мне нужен способ автоматического перезапуска приложения при изменении файлов .DLL.

Как мне это сделать?

Ответы [ 2 ]

6 голосов
/ 01 декабря 2008

Если каталог плагинов находится в каталоге Bin, веб-приложение будет автоматически перезапущено, если что-то изменится.

2 голосов
/ 01 декабря 2008

Класс FileSystemWatcher представляет собой общее решение подобных проблем, а HttpRuntime.UnloadAppDomain(); - это один из способов перезапустить ваше приложение. Я думаю, что требуется больше исследований / объяснений: есть много возможных решений.

Редактировать : Пробные пути. Хороший ответ.

...