Cómo detener el cierre automático del navegador cuando detiene la depuración en VS 2017

338

Estoy probando el nuevo RC VS 2017 y me pregunto si alguien sabe cómo recuperar el comportamiento de depuración anterior

En VS 2015 fue así:

Presione iniciar depuración

  • El sitio web se abre en una nueva pestaña de Chrome
  • Presione detener depuración
  • El sitio web todavía está abierto y el sitio aún se está ejecutando / activo

Ahora en 2017:

  • Presione iniciar depuración
  • El sitio web se abre en una nueva ventana que no puede acoplarse a ninguna otra ventana / pestaña de Chrome
  • Presione detener depuración
  • La ventana del sitio web / Chrome se cierra, no puedo seguir usando el sitio a menos que vaya manualmente a la ventana localhost en Chrome

¿Es posible en 2017 volver al estilo 2015? ¿Entonces la ventana de Chrome / Sitio web puede acoplarse con otras ventanas / pestañas de Chrome, y permanece abierta después de que detenga la depuración?

Además, encuentro que la nueva ventana de Chrome es frustrante de usar, ya que parece que no tiene ningún historial / contenido disponible. Por ejemplo, no puedo completar automáticamente formularios o URL, lo que es muy molesto cuando intento probar un formulario

mejobloggs
fuente

Respuestas:

585

Visual Studio 2017 versión 15.7 y superior y Visual Studio 2019 cambiaron las cosas nuevamente.

Deshabilitar las siguientes casillas de verificación le permitirá mantener abierto el navegador (no se cierra después de detener la depuración) y abre otra pestaña (en lugar de otra ventana):

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Herramientas> Opciones> Depuración> General

  • Deshabilite "Habilitar la depuración de JavaScript para ASP.NET (Chrome, Edge e IE)".

Herramientas> Opciones> Proyectos y soluciones> Proyectos web

  • ( Visual Studio 2017 ) Deshabilite "Detener depurador cuando la ventana del navegador está cerrada".
  • ( Visual Studio 2019 ) Deshabilite "Detener depurador cuando la ventana del navegador está cerrada, cierre el navegador cuando la depuración se detenga".
Jerone
fuente
Consulte también este informe de error relacionado en la Comunidad de desarrolladores de Microsoft.
Uwe Keim
112
Quién demonios agregó esta característica y pensó que sí, perfecto. ¡Es tan molesto!
Jon
2
Sírvanse también proporcionar una solución de texto para cuando la imagen se elimina etc.
mohas
18
Para VS 2019: si alguien está buscando la última opción (Detener depurador cuando la ventana del navegador está cerrada), la ha movido a Herramientas> Opciones> Proyectos y soluciones> Proyectos web> Detener depurador cuando la ventana del navegador está cerrada, cierre el navegador al depurar se detiene . Ver imagen
jag
1
@jag Gracias, lo incluí en las instrucciones.
Jerone
83

La razón del cambio de comportamiento se debe al soporte de VS 2017 para depurar JavaScript / TypeScript que se ejecuta en Chrome. Vea el anuncio aquí https://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-debugging-of-asp-net-projects-in-google-chrome/

Para volver al comportamiento de 2015 donde Chrome no está cerrado por el depurador, desactive el depurador de secuencias de comandos IE / Chrome en Herramientas -> Opciones de esta manera:

Opciones de depurador

Mads Kvist Kristensen
fuente
8
Esto no funcionó para mí hasta que desactivé "Activar Edición y Continuar" ( stackoverflow.com/questions/20831676/… ). Creo que ambos cambios juntos son la solución completa.
JoaoRibeiro
44
no funciona en vs2017, incluso después de la desactivaciónEdit and Continue
ahmad molaie
24

Para aquellos de ustedes que actualizaron a Visual Studio 2019, esa configuración ahora está en Herramientas> Opciones ...

Y luego, en el cuadro de diálogo de opciones (ver imagen a continuación) Proyectos y soluciones> Proyecto web:
desmarqueStop debugger when broswer window is closed, close browser when debugging

ingrese la descripción de la imagen aquí

Jean-Sébastien Gervais
fuente
Desmarcar solo esta opción no es suficiente. Cuando cierra el navegador, el depurador también se detiene.
FrenkyB
@FrenkyB Solo supongo que debe cerrar y volver a abrir todas sus instancias de Visual Studio ya que vs depurador no se detiene por mi parte cuando cierro el navegador.
Jean-Sébastien Gervais
19

Estoy escribiendo esta respuesta porque creo que las anteriores solo cubren la mitad del problema.

Lo primero que desea es deshacerse de este molesto 'ejecutar Chrome como una nueva ventana y cerrar automáticamente cuando se detiene la depuración'

Herramientas → Opciones → desmarque Habilitar depuración de JavaScript para ASP.NET

Después de hacer eso al iniciar la depuración, Chrome abre una nueva pestaña, después de detener la pestaña no se cierra pero el sitio web refrescante muestra una pantalla en blanco

de nuevo en Herramientas → Opciones

desmarque Habilitar Edición y Continuar

Desde ahora recuperas tu antiguo comportamiento.

Ventana de opciones

Pieczarr
fuente
3
con VS 15.7.0 se requieren ambas opciones (antes de que la respuesta acumulada fuera suficiente)
Stefan
1
@Stefan es correcto; necesita ambas opciones deshabilitadas ahora. Pero anteriormente abriría una pestaña y ahora abre otra instancia del navegador seleccionado.
Jerone
pero necesito editar y continuar para el código del lado del servidor, ¿por qué están entrelazados?
Ethermal
La respuesta de @ethermal jerone (Proyectos web -> Detener el depurador sin marcar) funciona sin deshabilitar Editar y continuar.
Steve Greene
2

Vaya a Herramientas -> Opciones y busque " Detener depurador ". Luego seleccione el nodo Proyectos web en Proyectos y soluciones. Desmarque " Detener depurador cuando la ventana del navegador esté cerrada ". Antes de esta opción, debe aplicar la sugerencia de @jerone .

PD: esta opción se puede usar después de VS versión 15.7

Puede PERK
fuente
1

Hay dos maneras de hacer esto:

  1. Inicie sin depurar presionando ctrl + f5 o
  2. Inicie con depuración (presionando f5) y luego vaya al menú Depurar y presione "Separar todo"

Espero que ayude.

Michael Braude
fuente
66
No creo que ninguna de las respuestas realmente aborde este terrible problema de flujo de trabajo / depuración de 2017. El punto es que en 2015 puede iniciar en una instancia de Chrome existente y aún depurar el código del servidor en VS. Parece que no hay una forma razonable de hacer esto con 2017. No debería tener que 'Separar todo' cada vez que inicie su aplicación, y cierre una instancia adicional de Chrome que aparezca, etc. Sin molestar a Michael B. muy molesto con MS por este problema. Espero que haya una mejor solución para volver al flujo de trabajo de depuración de 2015 que tenía sentido.
Austin Harris
44
@Austin, gracias por tus comentarios. Lo pasaré al equipo (trabajo en Visual Studio en Microsoft)
Michael Braude
3
@MichaelBraude, sí, este es un gran paso atrás en la productividad.
Spongman
1
Como dice Mads, puede deshabilitar el nuevo comportamiento si no le gusta. Gracias por este comentario!
Michael Braude
2
Sí, pero hacer eso también deshabilita el depurador de Chrome.
Spongman