Depuración remota de ASP.NET Core en Azure App Service (Windows)

En este artículo se describe cómo conectar el depurador de Visual Studio a una aplicación de ASP.NET Core que se ejecuta en Azure App Service. Los pasos siguientes le permitirán depurar la aplicación como si se ejecutara localmente.

Requisitos previos

  • Visual Studio 2022 con las cargas de trabajo ASP.NET y desarrollo web y desarrollo de Azure instaladas.

  • Primero debe implementar una aplicación de ASP.NET Core en Azure App Service (Windows) desde Visual Studio, y la aplicación debe estar en ejecución.

    Para obtener el entrenamiento práctico que incluye la implementación de App Service, consulte Depuración remota de ASP.NET Core en Azure.

Habilitar la depuración remota

Para poder depurar este problema con Visual Studio, debe habilitar la característica de depuración remota en App Service. Esta configuración permitirá que el depurador de Visual Studio se conecte al proceso principal de hospedaje web de App Service.

  1. Inicie sesión en Azure Portal.

    Busque la aplicación implementada en Azure Portal. Para encontrar la aplicación, vaya a la página App Services y seleccione la instancia de App Service. También puede buscar la instancia de App Service directamente por su nombre en la barra de búsqueda de la parte superior. (En este ejemplo, la instancia de App Service se denomina GitHubBrowser123).

    Captura de pantalla de bús de Azure.

  2. En la página de configuración de la instancia de App Service, seleccione Configuración en el panel de navegación izquierdo y, después, seleccione la pestaña Configuración general.

  3. Hacia la parte inferior de la página, asegúrese de establecer la característica Depuración remota en Activado y seleccione Visual Studio 2022 como Versión remota de Visual Studio.

    Captura de pantalla de la configuración de depuración remota de Azure.

  4. Seleccione Guardar en la parte superior de la página para conservar los cambios.

La instancia de servicio de la aplicación ahora admite la depuración remota a través de Visual Studio.

Configuración de los valores de depuración

Asegúrese de haber completado los pasos siguientes en Visual Studio antes de depurar una aplicación en Azure para asegurarse de que se ha realizado correctamente.

  1. En primer lugar, asegúrese de que ha compilado correctamente el proyecto al menos una vez. Una compilación correcta garantiza que el código fuente y los archivos compilados necesarios estén listos para usarse. Si la aplicación se ejecuta localmente, asegúrese de detenerla.

    Nota:

    Asegúrese de que el estado del código local coincide con lo que se implementó en Azure. Esto garantiza que los archivos de símbolos locales y el código fuente se alineen con la aplicación implementada.

  2. Seleccione Depuración > Opciones en el menú superior de Visual Studio. Asegúrese de que Habilitar Solo mi código está desactivado (como se muestra a continuación) y seleccione Aceptar.

    El cambio de esta configuración permite a Visual Studio depurar el código optimizado que se implementó en Azure mediante los archivos de símbolos necesarios de la carpeta local bin. El depurador usa los archivos de símbolos como un puente entre código compilado en ejecución y el código fuente en Visual Studio, por lo que es importante que el código fuente local coincida con la aplicación de implementación.

    Captura de pantalla de la configuración de depuración de Visual Studio.

Asociación del depurador a App Service

  1. En el menú principal de la parte superior de Visual Studio, seleccione Depurar -> Asociar al proceso para abrir el cuadro de diálogo correspondiente. Con esta ventana puede conectarse y adjuntar a diferentes destinos. En este caso, se conectará a la instancia de App Service que creó en el paso anterior.

  2. Seleccione la lista desplegable Tipo de conexión y elija la opción Microsoft Azure App Services.

  3. Seleccione Buscar.. junto al campo Destino de la conexión para abrir un cuadro de diálogo que le permita examinar las suscripciones de Azure y los servicios de aplicaciones.

  4. Busque y seleccione la instancia de App Service que creó en el paso anterior y, después, elija Aceptar.

  5. El proceso w3wp.exe debería aparecer en la lista de procesos disponibles a los que conectarse, que es el proceso principal del Azure App Service que hospeda la aplicación implementada. Seleccione ese proceso y, después, elija Asociar en la parte inferior derecha para conectar el depurador de Visual Studio.

    Captura de pantalla de la asociación a las características de proceso.

  6. En Index.cshtml.cs o en otro archivo de aplicación de C#, establezca un punto de interrupción haciendo clic en el margen izquierdo. (O bien, haga clic con el botón derecho y elija Punto de interrupción>Insertar punto de interrupción).

  7. Opcionalmente, también puede comprobar que Visual Studio ha cargado los archivos de símbolos de la sesión de depuración. Vaya a Depurar > Windows > Módulos para abrir la ventana de módulos. Esta ventana debería indicar que los archivos de símbolos se cargaron de forma correcta después de los cambios en la configuración de Solo mi código realizados anteriormente.

    Captura de pantalla de la ventana de archivos de símbolo.