Sdílet prostřednictvím


Kurz: Ladění konzolové aplikace .NET pomocí editoru Visual Studio Code

V tomto kurzu se seznámíte s ladicími nástroji dostupnými v editoru Visual Studio Code pro práci s aplikacemi .NET.

V tomto kurzu se seznámíte s ladicími nástroji dostupnými v GitHub Codespaces pro práci s aplikacemi .NET.

Požadavky

Tento kurz funguje s konzolovou aplikací, kterou vytvoříte v Vytvoření konzolové aplikace .NET pomocí nástroje Visual Studio Code.

Nastavte zarážku

Zarážka dočasně přeruší provádění aplikace před spuštěním řádku se zarážkou.

  1. Spusťte Visual Studio Code.

  2. Otevřete složku projektu, který jste vytvořili v nástroji Create a .NET console application using Visual Studio Code.

  3. Otevřete soubor Program.cs.

  4. Nastavte zarážku na řádek, který zobrazuje název, datum a čas, kliknutím na levý okraj okna kódu. Levý okraj je vlevo od čísel řádků. Další způsoby, jak nastavit zarážku, jsou stisknutím klávesy F9 nebo zvolením příkazu Spustit>přepínací zarážku z nabídky při výběru řádku kódu.

    Visual Studio Code označuje řádek, na kterém je zarážka nastavena, zobrazením červené tečky na levém okraji.

    Nastaven bod přerušení

  1. Otevřete prostředí GitHub Codespace, které jste vytvořili v nástroji Vytvoření konzolové aplikace .NET pomocí editoru Visual Studio Code.

  2. Otevřete soubor HelloWorld.cs .

  3. Nastavte na řádku bod přerušení, který zobrazuje název, datum a čas, kliknutím na levý okraj okna kódu. Levý okraj je vlevo od čísel řádků. Zarážku můžete nastavit také stisknutím klávesy F9 zatímco je vybraný řádek kódu.

    Bod přerušení nastaven

Začít ladění

Debug a Release jsou .NET integrované konfigurace sestavení. Konfiguraci sestavení ladění použijete k ladění a konfiguraci vydání pro konečnou distribuci.

Nastavení spuštění editoru Visual Studio Code ve výchozím nastavení používá konfiguraci sestavení ladění, takže ho před laděním nemusíte měnit.

  1. Otevřete zobrazení Ladění tak, že v nabídce na levé straně vyberete ikonu Ladění.

    Otevření karty Ladění v editoru Visual Studio Code

  2. Vyberte Spustit a ladit. Pokud se zobrazí výzva, vyberte C# a pak vyberte C#: Spustit spouštěný projekt. Další způsoby spuštění programu v režimu ladění jsou stisknutím klávesy F5 nebo zvolením možnosti Spustit>ladění z nabídky.

    Spustit ladění

  3. Pokud se zobrazí výzva k výběru možnosti Spustit konfiguraci, vyberte C#: Ladění aktivního souboru.

  4. Vyberte kartu Konzola ladění, abyste viděli výzvu "Co je vaše jméno?", která se zobrazí před tím, než program čeká na odpověď.

    Vyberte kartu Konzola ladění

  5. Zadejte řetězec do okna Debug Console v reakci na výzvu k zadání názvu a poté stiskněte Enter.

    Spuštění programu se zastaví, když dosáhne zarážky, a to ještě před spuštěním metody Console.WriteLine. Část Locals v okně Variables zobrazuje hodnoty proměnných, které jsou definovány v aktuálně spuštěné metodě.

    Zarážka aktivována, zobrazují se místní hodnoty

GitHub Codespaces ve výchozím nastavení používá konfiguraci sestavení ladění, takže ho před laděním nemusíte měnit.

  1. Otevřete zobrazení Ladění tak, že v nabídce na levé straně vyberete ikonu Ladění.

    Otevření karty Ladění v editoru Visual Studio Code

  2. Vyberte Spustit a ladit. Pokud se zobrazí výzva, vyberte jako ladicí program C# a pak jako spouštěcí konfiguraci vyberte C#: Ladit aktivní soubor .

  3. Zvolte záložku Konzole pro ladění, abyste viděli výzvu "Jak se jmenujete?", kterou program zobrazí před čekáním na odpověď.

  4. V okně Debug Console zadejte řetězec jako odpověď na výzvu k zadání jména a potom stiskněte Enter.

    Spuštění programu se zastaví, když dosáhne zarážky, ještě před spuštěním Console.WriteLine metody. Část Locals v okně Variables zobrazuje hodnoty proměnných, které jsou definovány v aktuálně spuštěné metodě.

    Zasažena zarážka, zobrazují se lokální hodnoty

Použijte ladicí konzoli

Okno konzoly ladění umožňuje interakci s aplikací, kterou ladíte. Můžete změnit hodnotu proměnných a zjistit, jak ovlivňuje váš program.

  1. Vyberte záložku Konzola ladění.

  2. Na příkazovém řádku v dolní části okna name = "Gracie" zadejte a stiskněte Enter.

    Změna hodnot proměnných

  3. Zadejte currentDate = DateTime.Parse("2026-01-28T20:54:00Z").ToUniversalTime() v dolní části okna konzoly ladění a stiskněte Enter.

    Okno Proměnné zobrazí nové hodnoty proměnných name a currentDate proměnných.

  4. Pokračujte v provádění programu tak, že na panelu nástrojů vyberete tlačítko Pokračovat . Dalším způsobem, jak pokračovat, je stisknutím klávesy F5.

    Pokračovat v ladění

    Hodnoty zobrazené v okně konzoly odpovídají změnám, které jste provedli v konzole ladění.

    Terminál zobrazující zadané hodnoty

  5. Stisknutím klávesy Enter ukončete aplikaci a zastavte ladění.

Nastavení podmíněného bodu přerušení

Program zobrazí řetězec, který uživatel zadá. Co se stane, když uživatel nic nezadá? Můžete to otestovat pomocí užitečné funkce ladění označované jako podmíněný bod přerušení.

  1. Klikněte pravým tlačítkem myši (Ctrl-klikněte na macOS) na červené tečce, která představuje zarážku. V místní nabídce vyberte Upravit zarážku a otevřete dialogové okno, které umožňuje zadat podmíněný výraz.

    Místní nabídka Bodů přerušení

  2. V rozevíracím seznamu vyberte Expression, zadejte následující podmíněný výraz a stiskněte Enter.

    String.IsNullOrEmpty(name)
    

    Zadání podmíněného výrazu

    Pokaždé, když se zarážka dosáhne, ladicí program volá metodu String.IsNullOrEmpty(name) a na tomto řádku se přeruší pouze v případě, že volání metody vrátí true.

    Místo podmíněného výrazu můžete zadat počet přístupů, který přeruší provádění programu před spuštěním příkazu zadaným počtem. Další možností je zadat podmínku filtru, která přeruší provádění programu na základě takových atributů jako identifikátor vlákna, název procesu nebo název vlákna.

  3. Spusťte program s laděním stisknutím klávesy F5.

  4. Na kartě Konzola ladění stiskněte klávesu Enter , až se zobrazí výzva k zadání vašeho jména.

    Vzhledem k tomu, že zadaná podmínka (name je buď null nebo String.Empty) byla splněna, program se zastaví, když dosáhne breakpointu, a to před spuštěním metody Console.WriteLine.

    Okno Proměnné ukazuje, že hodnota name proměnné je "", nebo String.Empty.

  5. Potvrďte, že je hodnota prázdný řetězec zadáním následujícího příkazu na příkazovém řádku konzoly ladění a stisknutím klávesy Enter. Výsledek je true.

    name == String.Empty
    
  6. Pokud chcete pokračovat v provádění programu, vyberte na panelu nástrojů tlačítko Pokračovat .

  7. Stisknutím klávesy Enter ukončete program a zastavte ladění.

  8. Vymažte zarážku kliknutím na tečku v levém okraji okna kódu. Další způsoby, jak vymazat zarážku, jsou stisknutím klávesy F9 nebo zvolením příkazu Spustit > přepnout zarážku z nabídky, když je vybrán řádek kódu.

  9. Pokud se zobrazí upozornění, že dojde ke ztrátě podmínky zarážky, vyberte Odebrat zarážku.

Procházení programu

Visual Studio Code také umožňuje krokovat po řádku prostřednictvím programu a monitorovat jeho spuštění. Obvykle byste nastavili zarážku a sledovali tok programu prostřednictvím malé části programového kódu. Vzhledem k tomu, že je tento program malý, můžete procházet celý program.

  1. Nastavte zarážku na řádku kódu, ve které se zobrazí výzva "Co je vaše jméno?".

  2. Stisknutím klávesy F5 spusťte ladění.

    Visual Studio Code zvýrazní řádek se zarážkou.

    V tomto okamžiku okno Proměnné ukazuje, že args pole je prázdné a namecurrentDate má výchozí hodnoty.

  3. Na panelu nástrojů Ladění vyberte krok do nebo stiskněte klávesu F11.

    tlačítko Step-Into

    Visual Studio Code zvýrazní další řádek.

  4. Visual Studio Code spustí výzvu k zadání názvu Console.WriteLine a označí další řádek spuštění. Další řádek je Console.ReadLine pro name. Okno Proměnné zůstává nezměněno a na kartě Terminál se zobrazí výzva "Jak se jmenujete?".

  5. Vyberte krok do nebo stiskněte klávesu F11.

    Visual Studio Code zvýrazní přiřazení proměnné name. Okno Proměnné ukazuje, že name je stále null.

  6. Na výzvu odpovězte zadáním řetězce na kartě terminálu a stisknutím klávesy Enter.

    Karta Konzola ladění nemusí při zadávání zobrazovat řetězec, který zadáte, ale Console.ReadLine metoda zachytí váš vstup.

  7. Vyberte krok do nebo stiskněte klávesu F11.

    Visual Studio Code zvýrazní přiřazení proměnné currentDate. Okno Variables zobrazuje hodnotu vrácenou voláním Console.ReadLine metody. Na kartě Terminál se zobrazí řetězec, který jste zadali na příkazovém řádku.

  8. Vyberte krok do nebo stiskněte klávesu F11.

    Okno Proměnné zobrazuje hodnotu currentDate proměnné po přiřazení z DateTime.Now vlastnosti.

  9. Vyberte krok do nebo stiskněte klávesu F11.

    Visual Studio Code volá metodu Console.WriteLine(String, Object, Object) . V okně konzoly se zobrazí formátovaný řetězec.

  10. Vyberte Krok ven nebo stiskněte Shift+F11.

    tlačítko Step-Out

    V terminálu se zobrazí "Stisknutím libovolné klávesy ukončíte..."

  11. Stisknutím libovolné klávesy program ukončete.

Použití konfigurace sestavení vydané verze

Po otestování debug verze aplikace byste také měli zkompilovat a otestovat verzi Release. Verze zahrnuje optimalizace kompilátoru, které mohou ovlivnit funkci aplikace. Například optimalizace kompilátoru navržené tak, aby zlepšily výkon, můžou vytvářet závodní situace ve vícevláknových aplikacích.

Pokud chcete sestavit a otestovat verzi konzolové aplikace, otevřete terminál a spusťte následující příkaz:

dotnet run --configuration Release

Pokud chcete sestavit a otestovat verzi konzolové aplikace, spusťte v terminálu následující příkaz:

dotnet run --configuration Release HelloWorld.cs

Další kroky

V tomto kurzu jste použili nástroje pro ladění editoru Visual Studio Code. V dalším kurzu publikujete nasaditelnou verzi aplikace.