IIS Express Немедленное завершение работы сайта после остановки веб-приложения

Я использую visual studio 2012 в первые дни, когда я хочу остановить приложение в среде IDE, приложение все еще работает на IIS Express, я мог просматривать и работать с запущенным приложением, но теперь я не могу. IIS Немедленное закрытие приложения, если я нажму кнопку остановки. Поскольку я помню, я не вносил никаких изменений в настройку. Как я должен делать это так же, как в первые дни.

Ответ 1

Недавно я столкнулся с аналогичной ситуацией, когда внезапно мой IIS Express остановился сразу после того, как я прекратил отладку. Это произошло после того, как я включил "Enable Edit and Continue". Поэтому, если вы отключите это, вы увидите, что IIS Express работает даже после отладки.

Щелкните правой кнопкой мыши свой проект > нажмите "Свойства" > выберите вкладку "Веб" слевa > снимите флажок Enable Edit and Continue.

Ответ 2

В VS2010 и VS2012 опция редактирования и продолжения отключена по умолчанию при создании нового проекта веб-приложения. В VS2013 он включен по умолчанию.

Этот параметр можно найти на вкладке "Веб" в окне свойств веб-проектов.

edit and continue option vs2013

С включением "Включить редактирование и продолжение" отладчик VS запускает ваше веб-приложение в IIS Express. Когда вы прекращаете отладку, IIS Express также закрывается. При таком поведении вы увидите, что системный лоток IIS Express отображается во время отладки и ушел после отладки. Это поведение такое же, как в VS2012, когда включена опция Включить редактирование и продолжение.

Если вам не нужна функция "Редактировать и продолжить" во время разработки и хотелось бы, чтобы IIS Express оставался после сеанса отладки, вы можете просто отключить параметр "Включить редактирование и продолжение" strong > .

I f вы хотите использовать "Редактировать и продолжить" или вы разрабатываете сайт Asp.net 5 (проекты ASP.NET 5 не имеют флажка "Изменить и продолжить" в свойствах проекта) вам нужно использовать команду "Detech all" , чтобы остановить отладку.

Отладчик отсоединяется от процесса iis, не закрывая его.

Ясно, что функция "Редактировать и продолжить" не будет работать, пока вы не начнете отладку снова.

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

Ответ 3

Вместо нажатия кнопки (X) STOP вы можете использовать пункт меню Detach all в меню "Отладка". Основное отличие состоит в том, что кнопка остановки прекратит любой процесс, который в настоящее время отлаживается, а Detach All отключит отладчик от процессов, но не прекратит их.

Обычный рабочий процесс IIS также будет прекращен, но поскольку он использовался как служба, он также автоматически запускается снова и, следовательно, вы можете продолжать использовать его без перезапуска процесса через |> Debug или |> Start without debugging.

Снимок экрана для справки

Adding 'Edit and Continue' button to debugging toolbar.

Ответ 4

Похоже, что с момента выпуска версии Visual Studio 2015 Update 2 принятое решение больше не работает.

Самое простое решение, которое я нашел до сих пор, - это запустить проект, выбрав " Начать без отладки" в меню Отладка.

Ответ 5

Это, вероятно, лучше всего классифицировать как другое обходное решение, но оно работает для меня.

Обычно я запускаю проект в первый раз с помощью контекстного меню "Просмотр в браузере" (или CTRL-Shift-W).

С этого момента, все, что требует отладки, я обычно присоединяюсь к новому существующему процессу iisexpress. В то время как mousing через контекстные меню сделает это не стартером, он почти так же быстро, как F5, со следующими нажатиями клавиш:

  • Shift-F6 для создания текущего проекта или Ctrl-Shift-B для создания (это требуется только в том случае, если вы внесли изменения, но я подумал, что я должен упомянуть об этом, поскольку F5 уже делает это).
  • Ctrl-Alt-P открывает диалоговое окно подключения к процессу

  • ввод "iis" затем приведет вас к процессу iisexpress.

  • нажмите Enter, и вы подключены.

Если у вас более одного запуска iisexpress, последний из них обычно появляется в верхней части списка. Другой вариант - сдвиг-выбор и привязка ко всем из них.

Это имеет ряд преимуществ ИМО. Прежде всего, это не завершает процесс. Во-вторых, окно браузера не закрывается, когда вы прекращаете отладку. Это трещит меня, когда я вижу, что разработчик повторяет 7 шагов, чтобы воспроизвести ошибку, когда все, что ему нужно сделать, - это нажать F5 в существующем окне браузера, чтобы просто отправить сообщение после подключения отладчика. Наконец, я должен сделать это уже при подключении к nunit, поэтому я получаю более последовательный опыт.