IIS Express Desligando o site em execução imediatamente após a interrupção do aplicativo da web

173

Estou usando o visual studio 2012 nos primeiros dias em que quero interromper o aplicativo no IDE. O aplicativo ainda estava em execução no IIS Express. Eu poderia navegar e trabalhar com o aplicativo em execução, mas agora não consigo. IIS Desligando o aplicativo imediatamente se eu pressionar o botão Parar. Desde que me lembro, não fiz nenhuma alteração na configuração. Como devo fazer isso funcionando da mesma forma que nos primeiros dias.

sabre
fonte
1
Tente 'visualizar no navegador' em vez de 'reproduzir'. Você mudou o navegador padrão? O IE é desligado automaticamente quando o Chrome é interrompido.
Emanuele Greco
Não, estou usando o FF, mas às vezes preciso depurar o aplicativo.
Sabre
Eu acho que isso é algo relacionado ao IIS Express.
sabre
1
Em vez de clicar no botão Parar, você também pode usar Desanexar tudo no menu Debug.
precisa saber é o seguinte
1
Ele desanexou o depurador dos processos sendo depurados, mas não elimina os processos em andamento.
Jesshouwing

Respostas:

344

Recentemente, enfrentei uma situação semelhante quando, de repente, meu IIS Express parou logo após a interrupção da depuração. Isso aconteceu depois que eu ativei "Ativar edição e continuar" . Portanto, se você desabilitar isso, verá que o IIS Express permanece em execução mesmo após a interrupção da depuração.

Clique com o botão direito do mouse em seu projeto> clique em Propriedades> selecione a guia 'Web' à esquerda> desmarque a Enable Edit and Continuecaixa de seleção.

Abhi
fonte
3
Posso confirmar que isso corrigiu o problema para mim.
precisa
51
Isso funciona !! Clique com o botão direito do mouse em seu projeto> clique em Propriedades> selecione a guia 'Web' à esquerda> desmarque a caixa de seleção 'Ativar edição e continuar'.
Nv.snow 19/10/2013
6
Funciona. No Visual studio 2013, abra "Ferramentas-> Opções", selecione na árvore "Depuração-> Editar e continuar" e desmarque a caixa "Ativar edição e continuar".
Renzo Ciot
3
você pode ler sobre esse recurso em mais detalhes aqui: blogs.msdn.com/b/webdev/archive/2013/07/11/…
gor
5
Não, esta é uma solução ruim - veja a solução correta, postada por @jessehouwing, abaixo.
Josh M.
85

No VS2010 e no VS2012, a opção editar e continuar é desativada por padrão ao criar um novo projeto de aplicativo da web. No VS2013, está ativado por padrão.

Você pode encontrar essa opção na guia Web na janela de propriedades do projeto web.

opção editar e continuar vs2013

Com "Ativar edição e continuar" ativado, o depurador do VS inicia o aplicativo da Web no IIS Express. Quando você para de depurar, o IIS Express também é fechado. Com esse comportamento, você verá a bandeja do sistema IIS Express sendo exibida durante a depuração e removida após a depuração. Esse comportamento é o mesmo do VS2012 quando a opção Ativar edição e continuar está ativada.

Se você não precisar da funcionalidade "Editar e continuar" durante o desenvolvimento e desejar que o IIS Express permaneça após uma sessão de depuração, basta desativar a opção Ativar edição e continuar .

Se você deseja usar "Editar e Continuar" ou está desenvolvendo um site Asp.net 5 (os projetos ASP.NET 5 não possuem uma caixa de seleção Editar e Continuar nas propriedades do projeto), você deve usar o comando "Detech all" para parar a depuração.

O depurador se desconectará do processo iis sem fechá-lo.

Claramente, o recurso "Editar e continuar" não funcionará até você iniciar a depuração novamente.

insira a descrição da imagem aqui

giammin
fonte
uma imagem vale mais que mil palavras: D
giammin
64

Em vez de pressionar o (X) STOPbotão, você pode usar o Detach allitem de menu no menu Debug. A principal diferença é que o botão Parar encerrará qualquer processo que está sendo depurado no momento, enquanto Detach All desconectará o depurador dos processos, mas não os encerrará.

O processo normal de trabalho do IIS também seria encerrado, mas, como costumava ser executado como um serviço, ele também será iniciado automaticamente novamente e, portanto, você poderá continuar a usá-lo sem precisar reiniciar o processo por meio de |> Debugou |> Start without debugging.

Captura de tela para referência

Adicionando o botão 'Editar e continuar' à barra de ferramentas de depuração.

jessehouwing
fonte
3
na verdade, isso está mais próximo da resposta real. A opção 'EDIT AND CONTINUE' é um recurso. Anexar e desanexar o rastreador de depuração a um processo de escuta é o conceito sublinhado da discussão aqui, e se clicar em parar termina o processo de escuta ou simplesmente desanexa-se dele .. ao qual, é claro, você pode se reconectar também.
Brett Caswell
@ jcmcbeth realmente funciona para o IIS Express .. Eu não poderia vê-lo não funcionando ... Os processos do IIS Express são apenas isso, seus próprios processos separados .. seu depurador do VS está iniciando o processo e se anexando a ele .. mas esse processo não depende de seu depurador anexado a correr mais do que a sua aplicação ou servidor web exigem um visitante / utilizador-agente / cliente para executar no proc
Brett Caswell
1
@jcmcbeth, isso é algo estranho de se dizer em um site de perguntas e respostas quando você está falando sobre configurações e suporte a recursos. Isso não é pegar ou largar scenerio; Você declarou que ele não parece funcionar com o IIS Express. Faz.
Brett Caswell
1
A caixa de seleção "Ativar edição e continuação" não está presente nos projetos do VS 2015 RC para ASP.NET 5, portanto esse é o caminho a seguir se você deseja usar o IIS Express com eles.
Tomek
7
Esta é a resposta para como o VS 2015 Update 2 mudou o comportamento do IIS com a remoção de Editar e continuar na guia Web do projeto.
precisa saber é o seguinte
32

Parece que desde o lançamento da Atualização 2 do Visual Studio 2015, a solução aceita não funciona mais.

A solução mais fácil que encontrei até agora é iniciar o projeto selecionando " Iniciar sem depuração " no menu Debug .

tocqueville
fonte
1
Parece que você está falando do VS2015.
Chad Carisch
Porra, acabei de encontrar este problema e postei uma pergunta sobre isso. Existe alguma solução conhecida para resolver isso - além de religar seus atalhos para Iniciar sem depuração e desanexação em vez de Parar?
Nikib3ro 16/05
1
Eles dizem que o estão corrigindo na próxima atualização. Enquanto isso, outro truque que você pode usar é pressionar Ctrl + F5 para iniciar o site sem depuração: connect.microsoft.com/VisualStudio/feedback/details/2562576/…
mattmanser
4

Provavelmente, isso é melhor classificado como outra solução alternativa, mas funciona para mim.

Geralmente inicio o projeto pela primeira vez com o menu de contexto "Visualizar no navegador" (ou CTRL-Shift-W).

A partir de então, qualquer coisa que exija depuração, costumo anexar ao novo processo iisexpress existente. Embora o fato de passar o mouse pelos menus de contexto tornasse isso um iniciador, é quase tão rápido quanto F5 com as seguintes teclas:

  • Shift-F6 para criar o projeto atual ou Ctrl-Shift-B para criar a solução inteira (isso só é necessário se você tiver feito alterações, mas pensei em mencioná-lo, já que o F5 já faz isso).
  • Ctrl-Alt-P abre a caixa de diálogo anexar ao processo

  • digitar "iis" o levará ao processo iisexpress

  • aperte enter e você está conectado

Se você tiver mais de um iisexpress em execução, o último iniciado geralmente aparecerá no topo da lista. Outra opção é selecionar shift e anexar a todos eles.

Isso tem várias vantagens na IMO. Em primeiro lugar, não encerra o processo. Segundo, a janela do navegador não é fechada quando você para de depurar. Isso me incomoda quando vejo um desenvolvedor repetir 7 etapas para reproduzir um bug, quando tudo o que ele precisa fazer é pressionar F5 em uma janela existente do navegador para apenas repassar uma vez que o depurador esteja conectado. Por fim, eu tenho que fazer isso já ao me conectar à unidade, para obter uma experiência mais consistente.

b_levitt
fonte