Depurar .NET con F5 en VS Code

Resumen

Cuando trabajas con .NET en un entorno híbrido, saber dónde estás parado marca la diferencia entre escribir ls o dir. Aquí descubres cómo moverte entre la terminal de Ubuntu (WSL) y la de Windows desde Visual Studio Code, y cómo depurar tu aplicación con F5 sin depender de console logs.

Por qué importa saber en qué terminal estás trabajando

La terminal de Ubuntu y la línea de comandos de Windows (CMD) usan instrucciones distintas para tareas básicas. Si te equivocas de entorno, pierdes tiempo intentando comandos que no aplican.

Estas son las diferencias prácticas que verás al inspeccionar tu proyecto Hola mundo:

  • En Ubuntu usas ls para listar la estructura del proyecto.
  • En Windows CMD usas dir para obtener el mismo resultado.
  • En ambos puedes navegar con cd Hola mundo y compilar con dotnet run.

El mismo comando dotnet run produce el mismo resultado en los dos sistemas, así que el código corre igual. Lo que cambia es cómo te mueves dentro de cada terminal [0:55].

¿Cuál es la diferencia entre ls y dir? ls es el comando de Linux y Ubuntu para listar archivos. dir cumple la misma función en la línea de comandos de Windows. Ambos te muestran el contenido de la carpeta donde estás ubicado.

Cómo conectar Visual Studio Code con WSL desde Windows

Visual Studio Code te permite trabajar dentro de WSL sin salir del editor. La pista visual está en la esquina inferior izquierda, donde aparece un indicador del entorno activo [1:45].

Para abrir Visual Studio Code desde tu terminal, escribe code . y el editor se abrirá en la carpeta donde te encuentras. Si quieres conectarte a WSL, haz clic en esa esquina inferior y selecciona la opción Conectarme a WSL. El editor se recarga, ejecuta su proceso y queda listo para trabajar sobre Ubuntu.

Cuando ya no necesites esa conexión, repite el proceso y elige cerrar la conexión remota. El indicador volverá a mostrarse en amarillo, señal de que estás de regreso en el entorno local de Windows.

¿Qué es WSL? WSL (Windows Subsystem for Linux) es la capa de Windows que te permite correr una distribución de Linux como Ubuntu directamente en tu máquina, sin máquinas virtuales.

Cómo depurar una aplicación .NET con F5 en Visual Studio Code

C# es un lenguaje compilado, lo que abre la puerta a la depuración paso a paso. En lugar de llenar tu código de console logs, puedes detener la ejecución exactamente donde quieras inspeccionar [3:05].

El flujo es simple y consta de tres pasos:

  1. Coloca un punto rojo (breakpoint) en la línea que quieres inspeccionar haciendo clic al lado del número de línea.
  2. Ve a la sección Run and Debug o presiona la tecla F5.
  3. Selecciona Run and Debug para iniciar la ejecución.

Las extensiones de C# en Visual Studio Code se activan y aparece un panel con las variables en uso. La línea donde colocaste el breakpoint queda marcada en amarillo, indicando que la aplicación está pausada en ese punto [3:45].

Desde ahí puedes inspeccionar valores, avanzar línea por línea y entender el estado real de tu programa. Esta técnica es clave cuando empieces a construir aplicaciones más grandes y necesites rastrear errores sin ensuciar tu código.

¿Para qué sirve un breakpoint? Es una marca que pausa la ejecución de tu programa en una línea específica para que puedas revisar variables y flujo de datos en tiempo real.

Habilidades y conceptos que ganas con este flujo de trabajo

Dominar estos comandos y atajos te da control sobre tu entorno y acelera tu productividad como desarrollador.

  • Identificar el entorno activo: reconocer si estás en Ubuntu o Windows mirando la esquina inferior izquierda de Visual Studio Code [1:45].
  • Ejecutar dotnet run: compilar y correr una aplicación .NET con un solo comando, sin importar el sistema operativo [1:25].
  • Abrir Visual Studio Code desde la terminal: usar code . para abrir el editor en tu carpeta actual.
  • Depurar con F5: iniciar el modo Run and Debug para inspeccionar variables sin recurrir a console logs [3:25].

¿En qué entorno prefieres trabajar tus proyectos .NET, WSL o Windows nativo? Cuéntame en los comentarios cómo te organizas entre las dos terminales.