Для тех, кто не хочет ждать официальной поддержки IIS Express в Visual Studio, есть простой способ прикрутить возможность отладки самостоятельно.
Все, что нам понадобится — это скачать WebMatrix beta, в который входит IIS Express(отдельно скачать пока нет возможности).
После установки WebMatrix находим и редактируем файл «My Documents\IISExpress8\config\applicationhost.config».
Переходим к 145й строке и создаем еще одно определение сайта по образу и подобию WebSite1, удалив атрибут serverAutoStart:
Думаю значения измененных атрибутов очевидны, так что пропустим их описание.
Настало время запустить наш сервер. Сделать это можно следующей командой:
Вместо {YOUR_SITE_NAME} нужно подставить имя вашего сайта, которое вы указали в applicationhost.config. В моем случае это VSDebug. Если все сделано правильно, то сервер запустится и ваш сайт будет доступен.
Запускаем студию и загружаем в нее наш сайт. Делаем правый клик по проекту, выбираем Properties и переходим на таб Web. Здесь нам нужно выбрать Start External Program и указать команду запуска нашего сервера.
Ниже, в этом же окне, выбираем Use Custom Web Server и снова вводим URL сайта.
В разделе Debuggers снимаем все флажки, т.к. студия будет пытаться приаттачиться к IIS и не позволит нам выполнять отладку.
Теперь сохраняем свойства и жмем F5, чтобы запустить отладку. Открыть сайт в браузере можно воспользовавшись иконкой IIS Express в трее.
P.S. На описание этого процесса меня сподвигла следующая статья Kamran Ayub. Однако думаю, что описанный мной способ несколько проще и избавляет от необходимости руками перезапускать сервер и аттачиться к нему.
Все, что нам понадобится — это скачать WebMatrix beta, в который входит IIS Express(отдельно скачать пока нет возможности).
Ставим IIS Express
После установки WebMatrix находим и редактируем файл «My Documents\IISExpress8\config\applicationhost.config».
Переходим к 145й строке и создаем еще одно определение сайта по образу и подобию WebSite1, удалив атрибут serverAutoStart:
Copy Source | Copy HTML
- <site name="WebSite1" id="1">
- <application path="/">
- <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
- </application>
- <bindings>
- <binding protocol="http" bindingInformation=":8080:localhost" />
- </bindings>
- </site>
- <site name="VSDebug" id="2">
- <application path="/" applicationPool="Clr4IntegratedAppPool">
- <virtualDirectory path="/" physicalPath="c:\dev\mysite" />
- </application>
- <bindings>
- <binding protocol="http" bindingInformation=":8421:localhost" />
- </bindings>
- </site>
Думаю значения измененных атрибутов очевидны, так что пропустим их описание.
Настало время запустить наш сервер. Сделать это можно следующей командой:
"C:\Program Files (x86)\Microsoft WebMatrix\iisexpress.exe" /site:{YOUR_SITE_NAME}
Вместо {YOUR_SITE_NAME} нужно подставить имя вашего сайта, которое вы указали в applicationhost.config. В моем случае это VSDebug. Если все сделано правильно, то сервер запустится и ваш сайт будет доступен.
Настраиваем Visual Studio
Запускаем студию и загружаем в нее наш сайт. Делаем правый клик по проекту, выбираем Properties и переходим на таб Web. Здесь нам нужно выбрать Start External Program и указать команду запуска нашего сервера.
Ниже, в этом же окне, выбираем Use Custom Web Server и снова вводим URL сайта.
В разделе Debuggers снимаем все флажки, т.к. студия будет пытаться приаттачиться к IIS и не позволит нам выполнять отладку.
Теперь сохраняем свойства и жмем F5, чтобы запустить отладку. Открыть сайт в браузере можно воспользовавшись иконкой IIS Express в трее.
P.S. На описание этого процесса меня сподвигла следующая статья Kamran Ayub. Однако думаю, что описанный мной способ несколько проще и избавляет от необходимости руками перезапускать сервер и аттачиться к нему.