Application_Start не попадает в веб-приложение ASP.NET - PullRequest
9 голосов
/ 28 марта 2009

Я пытаюсь что-то отладить в файле global.asax.cs в веб-приложении ASP.NET и установил точку останова в событии Application_Start (), однако это событие не запускается при запуске веб-приложения внутри VS2008. Я нацеливаюсь на 3.5 рамки.

Что может помешать запуску этого события? Или как я мог испортить проект, чтобы это событие больше не было подключено?

Ответы [ 2 ]

14 голосов
/ 28 марта 2009

Одним из простых способов отладки вновь написанного кода в файле global.asax является сохранение файла web.config. Каждый раз, когда config.file сохраняется, приложение останавливается и запускается.

Вы можете найти полезную информацию в этой записи блога

Обходной путь: отладка Global.aspx.cs Application_Start () с веб-сервером ASP.Net в Visual Studio

Причина этого в том, что мы делаем не убить веб-сервер ASP.Net процесс после каждого запуска отладки и следовательно Application_Start () не запускается каждый раз. Есть веская причина почему мы это делаем ... Запуск ASP.Net Web Серверный процесс - дорогая задача и в большинстве сценариев рециркуляции этот процесс после каждой отладки будет отрицательно повлияет на вашу производительность ... Если вы не хотите отлаживать свой Метод Application_Start () тогда вероятно, вам не нужно иметь перезапустить процесс и сохранить производительность большую часть времени ...

Один из предложенных обходных путей:

Вы можете перейти на страницы вашей собственности ваше веб-приложение и включите Edit & Продолжайте, как показано ниже:

alt text

(из блога команды разработчиков Visual Web)

7 голосов
/ 28 марта 2009

Если я правильно помню, Application_Start запускается до того, как отладчик сможет подключиться к приложению.

Попробуйте сделать что-то еще, чтобы проверить, работает ли метод Application_Start, как, например, установка переменной приложения:

Application("app") = "started"

Затем отобразите переменную приложения на странице, чтобы увидеть, была ли она установлена.

...