Отладчик VS2008 отсоединен
Понятия не имею почему, но отладчик для конкретного проекта самопроизвольно перестал работать. Я говорю спонтанно, потому что однажды это сработало, я уехал домой на выходные, вернулся, и вдруг это не сработало.
Когда я создаю решение, запускается локальный веб-сервер, и сайт загружается в браузере, как и положено. Однако отладчик больше не работает - мне нужно вручную "Присоединиться к процессу" с сервером разработки, если я хочу проверить точки останова или выполнить пошаговый код.
Странная вещь: у меня нет этой проблемы с любым другим проектом в моей системе.
Могу ли я вызвать отключение, вызвавшее это? Что я могу сделать, чтобы исправить проблему, чтобы пропустить шаг "Присоединить к процессу" вручную при каждой сборке?
2 ответа
Я до сих пор не смог определить причину первоначальной проблемы, но для тех, кто сталкивался с этой проблемой, есть возможность краткосрочного исправления.
После того, как вы соберете свой проект (выбрав Bulid " Build Solution или просто нажав" Начать отладку "), вы можете присоединить отладчик к своему экземпляру сервера разработки ASP.NET.
Перейдите в " Отладка " и присоедините к процессу, прокрутите вниз, пока не увидите процесс WebDev.WebServer.EXE. Он будет помечен: ASP.NET Development Server - порт XXXX. Обычно это последний или очень близкий к последнему пункту в списке.
Выберите этот процесс и нажмите " Вложить". После этого у вас будут все обычные средства отладки, и вы сможете пошагово выполнять код после создания исключений или достижения точек останова.
Это не постоянное исправление! Вам придется проходить через один и тот же процесс каждый раз, когда вы создаете или перестраиваете свой проект. Боль, да, но все же полезный обходной путь.
Обновление - 10/10/10
Вчера я получил письмо от кого-то, кто страдал от той же проблемы. Мы определили, что это проблема в web.config
это, кажется, было добавлено VS. В обоих случаях значительная часть web.config
файл был вложен в <location>
блок с inheritInChildApplications
свойство установлено в "ложь".
По-видимому, этот параметр используется в.NET 4, но недопустим в.NET 3.5 ... поскольку VS 2008 не может в первую очередь собираться в.NET 4, как эти строки были добавлены, остается загадкой.
Удаление <location path="." inheritInChildApplications="false">
а также </location>
теги привели к работе web.config
файл, полная сборка сайта и прикрепленный отладчик. Наконец, полное, постоянное решение!
Эта статья может объяснить, почему: Невозможно отладить веб-сайт с расположением верхнего уровня
Ошибка в файле web.config может привести к подключению отладчика и немедленному выходу из него без каких-либо предупреждений или ошибок. Вы должны очень тщательно проверить web.config, так как ошибка может отличаться от указанной в статье.