Отладка Visual Studio не прикрепляется к WebDev.WebServer.EXE

У меня есть решение для многих проектов. На Debug у меня есть три веб-проекта, которые я хочу запустить на их собственных серверах веб-разработки Cassini ASP.NET. В свойствах решения → Общие свойстваStartup Project у меня выбрано несколько запускаемых проектов, для параметра Action трех веб-приложений установлено значение Начать. Все три сервера веб-разработки запускаются, и все три веб-страницы загружаются.

Однако Visual Studio подключается только к двум из WebDev.WebServer.EXE процессов. Мне нужно вручную подключиться к третьему процессу, чтобы отладить его с помощью отладчика.

Такое поведение только начало происходить, и я не понимаю, как это исправить.

Также следует отметить, что я останавливал и перезапускал серверы разработки несколько раз без каких-либо изменений в поведении. Кроме того, при подключении к процессу вручную я вижу, что свойство Type двух автоматически присоединяемых WebDev.WebServer.EXE процессов является управляемым, а свойство Type неприсоединенного WebDev.WebServer.EXE процесса - TSQL, Managed, x86. Однако при просмотре свойств проекта я ориентируюсь на AnyCPU и НЕ включаю отладку SQL Server.

Два правильно подключенных проекта - это веб-приложения C #.

<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

Проект, который прикрепляется неправильно, является веб-приложением VB.NET.

<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>

То же самое и на другой рабочей станции. Так что есть вероятность, что это не проблема, связанная с машиной.


person Aaron Daniels    schedule 14.10.2009    source источник
comment
Возможный дубликат Отладчик Visual Studio не подключается, когда находится в корне веб-сайта.   -  person Peter Mortensen    schedule 14.04.2018


Ответы (5)


Это может быть снимок в темноте, но я бы посмотрел на файлы csproj, чтобы увидеть, есть ли у того, который не работает, очевидных различий. В частности, я бы поискал элемент <ProjectTypeGuids>. Все, что связано с веб-хостингом, конечно, тоже интересно; так что что-нибудь под:

<ProjectExtensions>
  <VisualStudio>
    <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
      <WebProjectProperties>

(или аналогичный, в зависимости от вашего вкуса проекта; сравните между 3, если что-то выглядит неуместным)

person Marc Gravell    schedule 13.12.2009
comment
Я отредактировал свой вопрос и указал свой ProjectTypeGuids. При сравнении раздела ProjectExtensions единственная разница между тремя разными проектами - это номер порта. - person Aaron Daniels; 14.12.2009
comment
хммм ... ладно, хотя это стоило посмотреть. - person Marc Gravell; 14.12.2009
comment
Я согласен. Я думаю, ты заставил меня смотреть в правильном направлении. - person Aaron Daniels; 14.12.2009
comment
Я думаю, что проблема может заключаться в типах кода, которые использует отладчик. Почему один проект vb.net должен быть T-SQL, Managed и x86? А остальными просто управляют. Может ли это вызвать строго типизированный набор данных? У меня не отмечены параметры Native Code и SQL Server в разделе Project Properties - Web - Debuggers. - person Aaron Daniels; 14.12.2009

Щелкните правой кнопкой мыши по основному решению -> Свойства -> Общие свойства -> Запуск проекта ->

Убедитесь, что для него установлено значение «Несколько запускаемых проектов» и для всех установлено значение «Запуск», а не «Нет» или запуск без отладки.

Также дважды проверьте каждый файл .user проекта и убедитесь, что AlwaysStartWebServerOnDebug имеет значение true вместе с любыми другими параметрами отладки.

person JKG    schedule 14.12.2009

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

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

Попробуйте решение → СвойстваСвойства конфигурацииКонфигурация и посмотрите, какие проекты получают сборку и когда.

person Burt    schedule 14.12.2009
comment
Все три являются проектами веб-приложений. Единственная разница в том, что тот, который не подключается к отладчику, является проектом VB.NET, а остальные - проектами C #. - person Aaron Daniels; 14.12.2009

Не уверен, в чем может быть проблема, но когда у меня были проблемы со сложными проектами до того, как я обнаружил, это помогает напрямую посмотреть файлы .vbproj или .csproj.

Вы пробовали создать новый проект VB.NET и просто скопировать файлы из неработающего проекта?

Я бы также попытался добавить 4-й, очень простой проект веб-приложения на C #, чтобы увидеть, может быть, 3 - это какое-то магическое число для вашей конфигурации (хотя в настоящее время я работаю над решением с более чем 3-мя и не имею проблем с отладкой). Вы можете сделать то же самое с простым веб-приложением VB.NET - тогда вы узнаете, проблема ли это с веб-сервером № 3, VB.NET в целом или с вашим конкретным проектом.

person chris    schedule 14.12.2009
comment
Просматривая их, я не могу найти заметных различий. Я создал новый проект VB.NET, чтобы посмотреть, связано ли это с VB.NET, но он работал нормально. Я не копировал все заново, так как это большое веб-приложение под контролем версий. Кроме того, я хотел бы знать, что вызывает проблему, так же как я хочу, чтобы проблема была исправлена. - person Aaron Daniels; 14.12.2009
comment
Если вы скопируете все в новый проект, теоретически файл .vbproj должен выглядеть так же, как и тот, который не работает. Сравните их, и вы поймете, в чем проблема. Вам не нужно регистрировать изменения, если вы обнаружите, что проблема в файле .vbproj, вы можете просто отредактировать его, а затем зарегистрировать. - person chris; 14.12.2009

Включена ли отладка в файле Web.config веб-приложения? Установлен ли он в режим отладки при запуске в Visual Studio?

person Venemo    schedule 17.12.2009
comment
да. Два других проекта прикрепляются нормально. Если бы они не были настроены, ничего не подключалось бы. Спасибо за мысль. - person Aaron Daniels; 17.12.2009