Övning – Kör kod i felsökningsmiljön
Med Visual Studio Code-användargränssnittet kan utvecklare köra sin kod i en felsökningsmiljö. Stöd för felsökning tillhandahålls av tillägg, och för C#-utvecklare tillhandahålls felsökningsstöd av samma tillägg som ger stöd för kodutveckling och IntelliSense.
Felsökningsprogram och programinteraktion
Ett felsökningsverktyg kan användas för att pausa och återuppta kodkörningen, undersöka variablernas tillstånd och till och med ändra de värden som tilldelats variabler under körning. Du kanske undrar, hur kan felsökaren kontrollera och ändra ett program som körs? Det korta svaret är att felsökaren har åtkomst till programmets körningsmiljö och körbar kod.
Anmärkning
Felsökningsinteraktion med körningsmiljön är ett avancerat ämne. Dessutom är det inte ett krav att förstå hur felsökningsprogrammet fungerar i bakgrunden för att använda felsökningsprogrammet. Följande beskrivning kan dock tillfredsställa din nyfikenhet.
Visual Studio Code-felsökningsprogrammet för C# använder .NET-körningen för att starta och interagera med ett program. När du startar felsökningsprogrammet skapas en ny instans av körningen och programmet körs i den instansen. Körningen innehåller ett API (Application Programming Interface), som felsökningsprogrammet använder för att koppla till den process som körs (ditt program).
När programmet körs och felsökningsprogrammet har kopplats kommunicerar felsökningsprogrammet med körningsprocessen med hjälp av .NET-körningens felsöknings-API:er och ett standardprotokoll för felsökning. Felsökningsprogrammet kan interagera med processen (programmet som körs i .NET-körningsinstansen) genom att ange brytpunkter, stega igenom kod och inspektera variabler. Med Visual Studio Codes felsökningsgränssnitt kan du navigera i källkoden, visa anropsstackar och utvärdera uttryck.
Det vanligaste sättet att ange en felsökningssession är en startkonfiguration i filen launch.json. Den här metoden är standardalternativet som aktiveras av felsökningsverktygen. Om du till exempel skapar ett C#-konsolprogram och väljer Starta felsökning från menyn Kör använder felsökningsprogrammet den här metoden för att starta, ansluta till och sedan interagera med ditt program.
Skapa ett nytt kodprojekt
Det första steget i att lära sig felsökningsverktygen är att skapa ett kodprojekt som du kan köra i felsökningsprogrammet.
Öppna ett nytt exemplar av Visual Studio Code.
På menyn Arkiv väljer du Öppna mapp.
I dialogrutan Öppna mapp går du till mappen Windows Desktop .
I dialogrutan Öppna mapp väljer du Ny mapp.
Ge den nya mappen namnet Debug101 och välj sedan Välj mapp.
I menyn Terminal väljer du Ny terminal.
Ett .NET CLI-kommando kan användas för att skapa en ny konsolapp.
I kommandotolken på TERMINAL-panelen anger du följande kommando:
dotnet new consoleStäng terminalpanelen.
Granska startkonfigurationer för felsökning
Visual Studio Code använder en startkonfigurationsfil för att ange det program som körs i felsökningsmiljön.
Om mappen Debug101 inte innehåller någon Debug101.sln fil väljer du Program.cs och kontrollerar sedan att en .sln fil har skapats.
Om du öppnar en C#-kodfil uppmanas miljön att söka efter projektfiler. Den .sln filen är en lösningsfil som används av Visual Studio för att hantera projekt och som vanligtvis skapas automatiskt när du skapar ett nytt projekt i Visual Studio Code. Den .sln filen används av felsökningsprogrammet för att identifiera projektet som ska köras i felsökningsmiljön.
På menyn Visa väljer du Kommandopalett.
I kommandotolken anger du .net: g och väljer sedan .NET: Generate Assets for Build and Debug (Generera tillgångar för build och felsökning).
Observera den nya
.vscodemappen som har lagts till i projektmappen.
Mappen
.vscodeinnehåller filer som används för att konfigurera felsökningsmiljön..vscodeExpandera mappen och välj sedan filenlaunch.json.Ta en minut och undersök filen launch.json.
Startkonfigurationsfilen kan innehålla flera konfigurationer. Varje konfiguration innehåller en samling attribut som används för att definiera den konfigurationen.
Observera att attributet prelaunchTask anger en byggaktivitet .
I mappen
.vscodeväljer du tasks.json.Observera att filen tasks.json innehåller byggaktiviteten för kodprojektet.
Stäng filernalaunch.json och tasks.json .
Du tar en närmare titt på startkonfigurationsattributen senare i den här modulen.
Kör koden från menyn Kör
På menyn Kör i Visual Studio Code kan du köra koden med eller utan felsökningsprogrammet.
Öppna filen Program.cs .
Ersätt innehållet i Program.cs-filen med följande kod:
/* This code uses a names array and corresponding methods to display greeting messages */ string[] names = new string[] { "Sophia", "Andrew", "AllGreetings" }; string messageText = ""; foreach (string name in names) { if (name == "Sophia") messageText = SophiaMessage(); else if (name == "Andrew") messageText = AndrewMessage(); else if (name == "AllGreetings") messageText = SophiaMessage(); messageText = messageText + "\n\r" + AndrewMessage(); Console.WriteLine(messageText + "\n\r"); } bool pauseCode = true; while (pauseCode == true); static string SophiaMessage() { return "Hello, my name is Sophia."; } static string AndrewMessage() { return "Hi, my name is Andrew. Good to meet you."; }På menyn Arkiv väljer du Spara.
Öppna menyn Kör .
Observera att menyn Kör innehåller alternativ för att köra koden med eller utan felsökning.
På menyn Kör väljer du Kör utan felsökning
Observera att panelen DEBUG CONSOLE visar konsolutdata och att verktygsfältet Felsökning visar körningskontroller.
Panelen FELSÖKNINGSKONSOL bör visas under kodredigeraren. Som standard finns verktygsfältet Felsökning (det lilla verktygsfältet som visar kodkörningskontroller) ovanför kodredigeraren och centreras vågrätt i Visual Studio Code-fönstret.
I verktygsfältet Felsök väljer du Stoppa.
Starta en felsökningssession från menyn Kör
Menyn Kör innehåller alternativet att starta en felsökningssession.
På menyn Kör väljer du Starta felsökning
Ta en minut för att granska de meddelanden som visas i panelen FELSÖKNINGSKONSOL.
Utdata från ditt program är desamma som när du körde utan felsökning, men andra meddelanden som rör förberedelse av felsökningsmiljön visas.
Observera meddelandena om att läsa in .NET-resurser och ditt Felsökning101-program.
De första två meddelandena rapporterar inläsningen av .NET-biblioteket och sedan ditt Felsökning101-program.
Loaded 'C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.0\System.Private.CoreLib.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled. Loaded 'C:\Users\someuser\Desktop\Debug101\bin\Debug\net10.0\Debug101.dll'. Symbols loaded.Felsökningsprogrammet använder en särskild instans av .NET-körningen för att styra körningen av ditt program och utvärdera programtillståndet.
I verktygsfältet Felsök väljer du Stoppa.
Kör koden från körnings- och felsökningsvyn
RUN AND DEBUG-vyn i Visual Studio Code stöder en omfattande felsökningsmiljö.
Växla till KÖR OCH FELSÖK-vyn.
I vyn KÖR OCH FELSÖK väljer du Starta felsökning.
Knappen Starta felsökning är den gröna pilen på kontrollpanelen överst i vyn.
Observera att panelen FELSÖKNINGSKONSOL visar samma meddelanden om hur du konfigurerar felsökningsprogrammet som visades när du startade en felsökningsprocess från Menyn Kör .
I verktygsfältet Felsök väljer du Stoppa.
Granska utdata från ditt program
Innan du stänger panelen FELSÖKNINGSKONSOL, ta en minut att granska utdata som din kod har genererat.
Observera att Andrews hälsningsmeddelande upprepas oväntat.
Under resten av den här modulen använder du felsökningsverktygen i Visual Studio Code för att undersöka kodningsproblem.
Sammanfattning
Här följer några viktiga saker att komma ihåg från den här lektionen:
- Visual Studio Code-felsökningsprogrammet för C# använder .NET-körningen för att starta och interagera med ett program.
- Visual Studio Code Run-menyn har alternativ för att starta ett program med och utan att felsökaren är ansluten.
- Verktygsfältet Felsök innehåller en knapp för att stoppa en pågående process.
- Vyn KÖR OCH FELSÖK innehåller ett alternativ för att börja felsöka ett program.