В моем проекте asp.net MVC4 у меня есть несколько файлов .cs в папке app_start, которые необходимо инициализировать или выполнять задачи для каждой авторизации и т. д. Когда вы заходите на веб-сайт, им требуется довольно много времени для выполнения всех этих задач при запуске приложения. в первый раз. Можно ли автоматически запускать все файлы в папке app_start во время развертывания. Так что, когда кто-то заходит на сайт в первый раз, это не займет много времени.
Как автоматически запускать файлы в папке app_start, если они опубликованы с использованием веб-развертывания
Ответы (1)
Взгляните на автоматический запуск вашего приложения
Добавьте это в свой applicationHost.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...
}
}
person
dove
schedule
27.11.2012
Спасибо, Дэйв. Не могли бы вы подтвердить, должен ли я добавить это в web.config, как вы говорите, или в файл applicationHost.config, как описано в указанной вами ссылке.
- person sam; 28.11.2012
Большое спасибо. Не могли бы вы также указать, нужно ли мне заменить мой открытый класс MvcApplication: System.Web.HttpApplication { protected void Application_Start() открытым классом PreWarmCache : System.Web.Hosting.IProcessHostPreloadClient {
- person sam; 28.11.2012
Нет не заменяет. Это отдельный класс, и он может поместить его в корень вашего веб-приложения или куда угодно, если пространство имен конфигурации serviceAutoStartProviders совпадает.
- person dove; 28.11.2012
Спасибо, Дэйв, выполнил все шаги, но получил сообщение об ошибке HTTP «Сервис недоступен» 503. Служба недоступна. Любая идея, что я делаю неправильно
- person sam; 28.11.2012
что-то очень не так 5420869/ дважды проверьте все параметры конфигурации и действия, описанные в этой статье. попробуйте применить одно изменение за раз, пока оно не сломается.
- person dove; 28.11.2012