Inicio rápido: Depuración de ASP.NET Core con el depurador de Visual Studio
El depurador de Visual Studio proporciona muchas características de gran eficacia para ayudar a depurar aplicaciones. En este artículo se proporciona una forma rápida de obtener información sobre las características básicas.
Cree un nuevo proyecto
Abierto Visual Studio.
Si la ventana de inicio no está abierta, elija Archivo>Ventana de inicio.
En la ventana de inicio, elija Crear un proyecto nuevo.
En la ventana Crear un nuevo proyecto, introduzca o escriba aplicación web en el cuadro de búsqueda. A continuación, elija C# en la lista Lenguajes. Seleccione la plantilla Aplicación web de ASP.NET Core (Razor Pages) y siga los pasos para crear el proyecto.
Si no ve la plantilla de proyecto Aplicación web de ASP.NET (Razor Pages), vaya a Herramientas>Obtener herramientas y características…, que abrirá el Instalador de Visual Studio. Elija la carga de trabajo Desarrollo de ASP.NET y web y después elija Modificar.
Visual Studio crea el proyecto.
En el Explorador de soluciones, abra Privacy.cshtml (en Pages) y reemplace el código siguiente:
@{ ViewData["Title"] = "Privacy Policy"; }
con este código:
@{ ViewData["Title"] = "Privacy Policy"; <label>@PrivacyModel.PrivacyMessage</label> }
En el Explorador de soluciones, abra Privacy.cshtml.cs (en Pages/Privacy.cshtml) y reemplace el código siguiente.
public void OnGet() { }
Por este otro:
public static string? PrivacyMessage { get; set; } public void OnGet() { LinkedList<int> result = DoWork(); PrivacyMessage = "Result of work: " + result.First.Value + ", " + result.First.Value; } private static LinkedList<int> DoWork() { LinkedList<int> c1 = new(); c1.AddLast(10); c1.AddLast(20); LinkedList<int> c2 = new(c1); return c2; }
Establecer un punto de interrupción
Un punto de interrupción es un marcador que indica en qué punto debe Visual Studio suspender la ejecución de código para poder echar un vistazo a los valores de variables, o al comportamiento de memoria, o si se está ejecutando o no una rama de código. Es la característica más básica de la depuración.
Para establecer el punto de interrupción, haga clic en el medianil de la izquierda de la función
DoWork
(o seleccione la línea de código y presione F9).El punto de interrupción se establece a la izquierda de la llave de apertura (
{
).Ahora presione F5 (o elija Depurar > Iniciar depuración).
Cuando se cargue la página web, seleccione el vínculo Privacidad de la parte superior de la página web.
El depurador se detiene donde se ha establecido el punto de interrupción. La instrucción donde se ha detenido la ejecución del depurador y la aplicación se indica mediante la flecha amarilla. La línea con la llave de apertura (
{
) después de la declaración de funciónDoWork
aún no se ha ejecutado.Sugerencia
Si tiene un punto de interrupción en un bucle o recursión, o si tiene muchos puntos de interrupción que ejecuta paso a paso con frecuencia, use un punto de interrupción condicional para asegurarse de que el código se suspende ÚNICAMENTE cuando se cumplen determinadas condiciones. Esto ahorra tiempo y además puede facilitar la depuración de problemas que son difíciles de reproducir.
Navegación en el código
Hay distintos comandos para indicar al depurador que continúe. Aquí se muestra un comando de navegación de código muy útil disponible a partir de Visual Studio 2017.
Mientras la ejecución está detenida en el punto de interrupción, mantenga el puntero sobre la instrucción return c2
hasta que aparezca el botón verde Ejecutar hasta clic y luego presione el botón Ejecutar hasta clic.
La aplicación se sigue ejecutando y se detiene en la línea de código donde se ha hecho clic en el botón.
Los comandos de teclado habituales usados para ejecutar el código paso a paso son F10 y F11. Para obtener instrucciones más detalladas, vea Primer vistazo al depurador.
Inspeccionar las variables de una información sobre datos
En la línea de código actual (marcada con el puntero de ejecución amarillo), mantenga el puntero sobre el objeto
c2
para mostrar una información sobre datos.La información sobre datos muestra el valor actual de la variable
c2
y permite inspeccionar sus propiedades. Al depurar, si ve un valor que no esperaba, probablemente tenga un error en las líneas de código anteriores o de llamada.Expanda la información sobre datos para ver los valores de propiedad actuales del objeto
c2
.Si quiere anclar la información sobre datos para poder seguir viendo el valor de
c2
mientras ejecuta el código, seleccione el icono de anclar pequeño. (Puede mover la información sobre datos anclada a una ubicación que le resulte cómoda).
Pasos siguientes
En este tutorial, ha aprendido a iniciar el depurador, a ejecutar el código paso a paso y a inspeccionar variables. Puede ser que le interese analizar las características del depurador con más detenimiento, así como consultar los vínculos disponibles con más información.