Visual Studio 2012 Express: отладка с помощью пользовательского веб-сервера

У меня на машине установлен IIS 7. С Visual Studio 2010 Professional я могу правильно подключиться к процессу IIS и выполнить отладку.

Я заметил, что Visual Studio 2012 Express не имеет этой опции. Однако у него есть возможность использовать собственный веб-сервер во время отладки. Он запрашивает только базовый URL-адрес, который, как я предполагаю, будет http://localhost/. Однако я получаю следующую ошибку, когда пытаюсь выполнить отладку с этим параметром:

"The web server is not configured correctly." 

Спасибо за помощь!

введите здесь описание изображения




Ответы (3)


Это не пользовательский веб-сервер. Это пользовательский веб-URL. Это позволяет указать URL-адрес, который будет использоваться при выполнении отладчика. Это не означает, что отладчик будет использовать этот процесс.

Насколько я знаю, VS Express не позволяет подключаться к другому процессу. Вам придется купить стандартную версию или попробовать одну из бесплатных сред разработки, например SharpDevelop.

person Erik Funkenbusch    schedule 08.11.2012
comment
Спасибо за вашу помощь Mystery Man. Я обновил свой вопрос снимком экрана диалогового окна Отладка › Свойства PublicSite. У него явно есть настраиваемый параметр веб-сервера в разделе «Сервер». Вы все еще верите, что это не меняет веб-сервер? Я просто немного запутался :) - person jmotes; 09.11.2012
comment
@jmotes - он меняет URL-адрес, который может быть другим сервером. Что именно вы пытаетесь сделать? Пожалуйста, не говорите, что меняйте веб-сервер... Я имею в виду, что в конечном итоге является причиной, по которой вы это делаете. - person Erik Funkenbusch; 09.11.2012
comment
Я просто хочу иметь возможность отлаживать тот же веб-сайт, который я могу просматривать по адресу computername/project_alias. Все проекты, с которыми я работаю, были созданы и протестированы только в стандартных средах IIS, а перезапись URL-адресов и т. д. не всегда работает правильно при работе с веб-сервером VS. - person jmotes; 09.11.2012
comment
@jmotes - Почему вы не используете IIS Express? - person Erik Funkenbusch; 09.11.2012
comment
Наверное, это было бы хорошо, если бы это работало. Я предположил, что ответ kleinkie тоже не сработает, если я не смогу настроить собственный веб-сервер в Express. Спасибо за помощь! - person jmotes; 09.11.2012
comment
Еще раз, спасибо! Возможность использования IIS Express появилась в раскрывающемся списке «Веб-сайт», когда я выбрал папку веб-сайта в своем решении. Кажется, работает отлично! - person jmotes; 09.11.2012

Вот как использовать функцию «Присоединить к процессу» в процессе IIS при использовании Visual Studio Express для Интернета в качестве среды разработки:

  • Откройте проект своего веб-сайта в Visual Studio Express 2012 для Интернета
    и просмотрите свой веб-сайт разработки в браузере. Вы можете сделать это, нажав Ctrl+F5 в VS (запустить без отладки) — это запустит w3wp.exe (ISS Процесс пула приложений — этот процесс будет выполняться, когда веб-расположение вашего проекта — HTTP)
  • Откройте Visual Studio Express 2012 для рабочего стола Windows. да. для "рабочего стола Windows" - вот и вся хитрость (-:
  • В VS для настольных ПК — нажмите Ctrl+O (Открыть файл) — и перейдите к файлу на веб-сайте, который вы хотите отладить — например, [root]/Default.aspx.cs.
    Теперь в файле Default.aspx. cs установите точку останова — например, в коде события Page_Load
  • В VS для рабочего стола — перейдите в меню «Отладка» и выберите «Присоединить к процессу...
    В диалоговом окне «Присоединить к процессу» — в списке «Доступные процессы» выберите свой процесс IIS: w3wp.exe
    Теперь нажмите кнопку «Присоединить».
  • Перейдите в браузер и запустите страницу /Default.aspx.

Результат: веб-сайт, запущенный в процессе IIS, остановится в точке останова в VS для рабочего стола, и вы сможете его отладить.

Примечания:

  • Это будет работать только в том случае, если для веб-сайта проекта веб-сайта используется HTTP (это настраивается при создании проекта веб-сайта в VS. Инструкции Google)
  • Я сделал это на версии 2012 года, и это может работать и на других версиях.
person Yossi B    schedule 30.01.2014

Посмотрите, может ли этот пост помочь вам. Упростите веб-разработку с помощью IIS Express: http://www.codeproject.com/Articles/396569/Make-Web-Development-Easier-with-IIS-Express

У меня нет экспресса на моем ПК, но, насколько мне известно, VS Express поддерживает использование локального веб-сервера IIS или пользовательского веб-сервера, что означает, что вы должны иметь возможность отлаживать их. Если вы используете локальный веб-сервер IIS, вам нужно будет ввести правильный URL-адрес (обычно «http://localhost/applicationname»), если вы используете собственный веб-сервер, вам просто нужно добавить порт вместо /applicationname, например «http //локальный:54124"

person Clarice Bouwer    schedule 09.11.2012
comment
Клеинки, спасибо. Вы знаете, возможно ли это с Visual Studio Express? NV - только сейчас увидел вашу правку. - person jmotes; 09.11.2012
comment
Он заработал после того, как @Mystere-Man в комментариях к своему ответу подтвердил, что опция IIS Express доступна. Я включил его, (1) выбрав папку веб-сайта в моем решении (PublicSite в моем случае), что привело к переименованию раскрывающегося списка «Проект» в «Веб-сайт», затем (2) выбрав «Использовать IIS Express...» в этом раскрывающемся списке. - person jmotes; 10.11.2012