Веб-сервер ASP.NET по умолчанию, который запускается из Visual Studio (Казино), является небольшим багги на моей машине разработки, таким образом, мне нравится публиковать к локальному экземпляру IIS на моей dev машине и смотреть на веб-приложение там. Однако я не нахожусь автоматически в "Режиме отладки", когда я запускаю приложение этот путь.
Я знаю, что VS, 2010 имеет "Присоединение для Обработки" функции отладки, но я не уверен точно, как использовать его. Что я должен сделать, чтобы смочь отладить локальный IIS веб-приложение ASP.NET из Visual Studio? Конкретно:
Справочная информация: я запускаю Visual Studio 2010 на Windows XP SP3 с IIS 5.1 и.NET 4.0.
Дополнительная информация:
Я должен добавить, что попытался присоединить к aspnet_wp.exe, но когда я перехожу к странице, которую я знаю, имеет точку останова в нем, я получаю следующее сообщение, когда я нависаю над "открытой круговой" точкой останова:
Точка останова не будет в настоящее время поражаться. Никакие символы не были загружены для этого документа.
Мне ни разу не удалось заставить его работать с помощью F5 в Visual Studio, даже когда он был настроен для развертывания на локальном сервере IIS. Я не уверен, в чем именно заключалась проблема, но в конце концов мне удалось заставить ее работать гораздо более «ручным» способом. Большая часть того, чтобы заставить это работать, - это убедиться, что вы генерируете символы отладки и развертываете их на своем веб-сайте. Вот шаги, которые я предпринял, чтобы заставить его работать:
Имя веб-сайта IIS
/ Виртуальный каталог
После того, как вы сделаете все вышеизложенное, вы должны быть готовы развернуть свое приложение, чтобы его можно было отлаживать. Вот шаги, которые я использую для развертывания и последующей отладки приложения:
Хотя этот метод отлично работает, имейте в виду, что он не привязан только к вашей локальной среде разработки. Если другой пользователь на другом компьютере должен получить доступ к веб-приложению, я считаю, что точки останова все равно будут срабатывать, пока вы отлаживаете процесс.
Все, что вам нужно сделать, это использовать присоединение к процессу и указать aspnet_wp.exe. Это может быть w3wp.exe в зависимости от ОС. Раньше у меня был макрос для этого, но он перестал работать после VS2008.
Я никогда не делал никаких специальных настроек, и гаджет attach to process работает очень хорошо. Просто прикрепите его к процессу aspnet_wp.exe и все готово.
Я также разрабатываю свои веб-приложения на локальном IIS. Для локальной отладки IIS у меня всегда работал F5.
Если по какой-либо причине вы должны использовать присоединение к процессу, убедитесь, что вы подключаетесь к локальному процессу или что удаленный отладчик работает на удаленной машине. Приложение необходимо заранее запустить, например, запросив страницу в браузере. Используйте iisapp
(IIS 5.1, 6.0) или appcmd list wp
(IIS 7+), чтобы определить, какой идентификатор процесса принадлежит какому пулу приложений (необходимо только при наличии 2+ пулов приложений, действительно), а затем приступайте к работе с Присоединить к процессу .
Щелкните правой кнопкой мыши свой веб-проект в VS, перейдите к параметрам запуска и выберите «Использовать настраиваемый сервер», вставив локальный адрес вашего сайта в IIS.
Нажмите F5, запустится в IIS.