Как автоматически запускать файлы в папке app_start, если они опубликованы с помощью webdeploy

В моем проекте asp.net MVC4 у ​​меня есть несколько файлов.cs в папке app_start, которые необходимо инициализировать или выполнять задачи для каждой авторизации и т. Д. Когда вы заходите на веб-сайт, им требуется довольно много времени для выполнения всех этих задач при запуске приложения. в первый раз. Можно ли запускать все файлы в папке app_start автоматически при развертывании. Так что, когда кто-то заходит на сайт в первый раз, это не займет так много времени.

1 ответ

Решение

Взгляните на автозапуск приложения

Добавьте это в ваше приложение Host.config

<sites>    
     <site name="MySite" id="1">    
          <application path="/" 
                       serviceAutoStartEnabled="true" 
                       serviceAutoStartProvider="PreWarmMyCache" />    
     </site>    
</sites>
<serviceAutoStartProviders>
     <add name="PreWarmMyCache" type="PreWarmCache, MyAssembly" />
</serviceAutoStartProviders>

и следующее, чтобы предварительно загрузить вашу работу

public class PreWarmCache : System.Web.Hosting.IProcessHostPreloadClient {

    public void Preload(string[] parameters) {

        // Perform initialization and cache loading logic here...

    }

}
Другие вопросы по тегам