Démarrage rapide : déboguer ASP.NET Core avec le débogueur Visual Studio

Le débogueur Visual Studio fournit de nombreuses fonctionnalités puissantes pour vous aider à déboguer vos applications. Cet article vous offre un moyen rapide de vous familiariser avec quelques-unes des fonctionnalités de base.

Créer un projet

  1. Ouvrez Visual Studio.

    Si la fenêtre de démarrage n’est pas ouverte, choisissez Fichier>Fenêtre Démarrer.

  2. Dans la fenêtre de démarrage, choisissez Créer un projet.

  3. Dans la fenêtre Créer un projet, entrez ou tapez application web dans la zone de recherche. Ensuite, choisissez C# de la liste de langue. Sélectionnez le modèle ASP.NET Principal Web App (Razor Pages) et suivez les étapes pour créer le projet.

    Si vous ne voyez pas le modèle de projet Application web ASP.NET Core (Razor Pages), accédez à Outils>Obtenir les outils et fonctionnalités..., qui ouvre Visual Studio Installer. Choisissez la charge de travail Développement web et ASP.NET, puis Modifier.

    Visual Studio crée le projet.

  4. Dans l’Explorateur de solutions, ouvrez Privacy.cshtml (sous Pages) et remplacez le code suivant :

    @{
     ViewData["Title"] = "Privacy Policy";
    }
    

    par ce code :

    @{
     ViewData["Title"] = "Privacy Policy";
     <label>@PrivacyModel.PrivacyMessage</label>
    }
    
  5. Dans l’Explorateur de solutions, ouvrez Privacy.cshtml.cs (sous Pages/Privacy.cshtml) et remplacez le code suivant.

    public void OnGet()
    {
    }
    

    par ce code :

    
    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;
    
    }
    

Définir un point d'arrêt

Un point d’arrêt est un marqueur qui indique où Visual Studio doit interrompre l’exécution du code pour vous permettre d’examiner les valeurs des variables, le comportement de la mémoire, ou l’exécution ou non d’une branche de code. C’est la fonctionnalité la plus élémentaire du débogage.

  1. Pour définir le point d’arrêt, cliquez dans la marge à gauche de la fonction DoWork (ou sélectionnez la ligne de code et appuyez sur F9).

    Set a breakpoint

    Le point d’arrêt est défini à gauche de l’accolade ouvrante ({).

  2. Appuyez maintenant sur F5 (ou choisissez Déboguer > Démarrer le débogage).

  3. Une fois la page web chargée, sélectionnez le lien Privacy en haut de la page web.

    Le débogueur se met en pause là où vous avez défini le point d’arrêt. Une flèche jaune identifie l’instruction où le débogueur et l’exécution de l’application sont suspendus. La ligne avec l’accolade ouvrante ({) après la déclaration de la fonction DoWork n’a pas encore été exécutée.

    Hit a breakpoint

    Conseil

    Si vous avez défini un point d’arrêt dans une boucle ou une récurrence, ou si vous effectuez fréquemment un pas à pas dans du code contenant un grand nombre de points d’arrêt, utilisez un point d’arrêt conditionnel pour mettre en pause votre code SEULEMENT quand certaines conditions sont remplies. Ceci fait gagner du temps et peut également faciliter le débogage de problèmes qui sont difficiles à reproduire.

Il existe différentes commandes pour indiquer au débogueur de continuer. Nous montrons une commande de navigation pratique dans le code qui est disponible à compter de Visual Studio 2017.

Avec le code en pause au point d’arrêt, placez le curseur sur l’instruction return c2 jusqu’à ce que le bouton Exécuter jusqu’au clic vert Run to Click apparaisse, puis appuyez sur le bouton Exécuter jusqu’au clic.

Run to click

L’application poursuit son exécution, puis se met en pause sur la ligne de code où vous avez cliqué sur le bouton.

F10 et F11 sont des commandes clavier fréquemment utilisées pour avancer pas à pas dans le code. Pour des instructions plus détaillées, voir Présentation du débogueur.

Inspecter des variables dans une bulle d’informations (datatip)

  1. Dans la ligne de code active (indiquée par le pointeur d’exécution jaune), placez le curseur de la souris sur l’objet c2 pour afficher un datatip.

    View a datatip

    La bulle d’informations (datatip) vous montre la valeur actuelle de la variable c2 et vous permet d’inspecter ses propriétés. Lors du débogage, si vous remarquez une valeur que vous n’attendiez pas, vous avez probablement un bogue dans les lignes de code précédentes ou d’appel.

  2. Développez le datatip pour examiner les valeurs des propriétés actuelles de l’objet c2.

  3. Si vous voulez épingler le datatip pour continuer à voir la valeur de c2 pendant que vous exécutez du code, sélectionnez la petite icône d’épingle. (Vous pouvez déplacer le datatip épinglé vers un emplacement approprié.)

Étapes suivantes

Dans ce tutoriel, vous avez découvert comment démarrer le débogueur, parcourir le code pas à pas et inspecter des variables. Vous pouvez obtenir une présentation générale des fonctionnalités du débogueur et suivre des liens qui donnent accès à plus d’informations.