Application_Start не стреляет? - PullRequest
139 голосов
/ 13 марта 2009

У меня есть приложение ASP.NET MVC (бета), над которым я работаю, и я не могу понять, что я делаю не так, или мой метод Application_Start в Global.asax.cs факт не срабатывает при попытке отладки приложения.

Я поставил точку останова в строке в моем методе Application_Start и ожидаю, что при попытке отладки приложения точка останова попадет ... но это никогда не произойдет. Не после перезагрузки IIS, не после перезагрузки, никогда. Я что-то пропустил? Почему этот метод никогда не вызывается?

Ответы [ 27 ]

2 голосов
/ 13 июля 2015

Поздняя запись ...

Чтобы проверить, запускается ли приложение IIS до того, как отладчик успел подключиться, просто добавьте его в верх или низ вашего GLOBAL.ASAX Application_Start.

throw new ApplicationException("Yup, it fired");
2 голосов
/ 17 апреля 2016

Я столкнулся с этой проблемой при использовании статической страницы (например, index.html) в качестве начальной страницы - Application-Start не вызывается. Я обнаружил, что обслуживание статической страницы на самом деле не запускает приложение. Запрос страницы .aspx делает.

2 голосов
/ 13 марта 2009

Когда вы говорите «отладка», вы имеете в виду фактический запуск приложения из встроенного веб-сервера Visual Studio для отладки, или вы подразумеваете подключение к процессу в IIS? Если это первое, вы должны нажать Application_Start, но если это второе, может быть сложно начать процесс достаточно рано, чтобы его поймать.

2 голосов
/ 15 июня 2017

Убедитесь, что пространства имен в Global.asax и Global.asax.cs совпадают. Если они отличаются, он не выдаст никакой ошибки, но не достигнет точки останова также потому, что он вообще не выполняет application_start.

2 голосов
/ 25 июня 2014

Закройте Visual Studio и удалите папки bin и obj в своем веб-проекте (или всех проектах в решении).

Вот команды для удаления этих папок из всех ваших проектов:

rm *\bin -r
rm *\obj -r
2 голосов
/ 07 ноября 2014

Я сделал некоторые изменения, основанные на «Анализ кода при сборке» из Visual Studio. Анализ кода предложил «CA1822 Пометить элементы как статические» для Application_Start () в Global.asax. Я сделал это и закончил с этой проблемой.

Я предлагаю подавить это сообщение Code Analysis и не изменять сигнатуру методов / классов, автоматически создаваемых платформой, используемой для начальной загрузки Приложения. Сигнатура метода Application_Start, вероятно, была нестатической по причине.

Я вернулся к этому методу-подписи, и Application_Start () снова запустил:

    protected void Application_Start()
    { ... }
1 голос
/ 01 декабря 2014

Проверяли ли вы настройки проекта? У меня была эта проблема, и у меня был начальный URL, идущий на другой порт, чем порт моего сервера. Мне потребовалось слишком много времени, чтобы понять ...

1 голос
/ 11 июля 2012

У меня была эта проблема в проекте .net 4 web forms vs2010, и я попробовал все, что упомянуто на этой странице. В итоге удаление и добавление global.asax фактически решило проблему для меня.

1 голос
/ 22 октября 2013

У меня та же проблема, не могу поймать Application_Start. И причина была в том, что это не стрельба из-за несоответствия в файле разметки. Файл разметки Global.asax наследовал другой класс ...

1 голос
/ 13 марта 2009

Я думаю, что событие запуска приложения срабатывает только при первом запросе, вы заходите на свой веб-сайт (т.е. делаете запрос)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...