Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
In diesem Lernprogramm werden die in Visual Studio Code verfügbaren Debuggingtools für die Arbeit mit .NET-Apps vorgestellt.
In diesem Lernprogramm werden die Debugtools vorgestellt, die in GitHub Codespaces zum Arbeiten mit .NET-Apps verfügbar sind.
Voraussetzungen
Dieses Tutorial kann mit der Konsolen-App durchgeführt werden, die Sie in Tutorial: Erstellen einer .NET-Konsolenanwendung mit Visual Studio Code erstellen.
Haltepunkt festlegen
Ein Haltepunkt unterbricht vorübergehend die Ausführung der Anwendung, bevor die Zeile mit dem Haltepunkt ausgeführt wird.
Starten Sie Visual Studio Code.
Öffnen Sie den Ordner des Projekts, das Sie in " Erstellen einer .NET-Konsolenanwendung" mit Visual Studio Code erstellt haben.
Öffnen Sie die Datei Program.cs.
Legen Sie einen Haltepunkt in der Zeile fest, der den Namen, das Datum und die Uhrzeit anzeigt, indem Sie auf den linken Rand des Codefensters klicken. Der linke Rand befindet sich links von den Zeilennummern. Weitere Möglichkeiten, einen Haltepunkt festzulegen, sind das Drücken von F9 oder das Auswählen von Ausführen>Haltepunkt umschalten aus dem Menü, während die Codezeile markiert ist.
Visual Studio Code gibt die Zeile an, in der der Haltepunkt festgelegt wird, indem im linken Rand ein roter Punkt angezeigt wird.
Öffnen Sie Ihren GitHub Codespace, den Sie in " Erstellen einer .NET-Konsolenanwendung mit Visual Studio Code" erstellt haben.
Öffnen Sie die HelloWorld.cs Datei.
Legen Sie einen Haltepunkt in der Zeile fest, der den Namen, das Datum und die Uhrzeit anzeigt, indem Sie auf den linken Rand des Codefensters klicken. Der linke Rand befindet sich links von den Zeilennummern. Sie können auch einen Haltepunkt festlegen, indem Sie F9 drücken, während die Codezeile ausgewählt ist.
Debuggen starten
Debug und Release sind die integrierten Buildkonfigurationen von .NET. Sie verwenden die Debugbuildkonfiguration zum Debuggen und die Releasekonfiguration für die endgültige Releaseverteilung.
Standardmäßig verwenden Visual Studio Code-Starteinstellungen die Debugbuildkonfiguration, sodass Sie sie vor dem Debuggen nicht ändern müssen.
Öffnen Sie die Debugansicht, indem Sie im linken Menü das Symbol "Debuggen" auswählen.
Wählen Sie "Ausführen" und "Debuggen" aus. Wenn Sie gefragt werden, wählen Sie C# und dann "C#: Startprojekt starten" aus. Andere Möglichkeiten zum Starten des Programms im Debugmodus sind das Drücken von F5 oder das Auswählen von "Starten des Debuggens>" im Menü.
Wenn Sie aufgefordert werden, die Startkonfiguration auszuwählen, wählen Sie "C#: Aktive Datei debuggen" aus.
Wählen Sie die Registerkarte " Debugkonsole " aus, um die Eingabeaufforderung "Wie lautet Ihr Name?" anzuzeigen, bevor das Programm auf eine Antwort wartet.
Geben Sie eine Zeichenfolge im Fenster "Debugkonsole " als Reaktion auf die Eingabeaufforderung für einen Namen ein, und drücken Sie dann die EINGABETASTE.
Die Programmausführung wird beendet, wenn der Haltepunkt erreicht wird, und bevor die
Console.WriteLineMethode ausgeführt wird. Im Abschnitt " Locals " des Fensters "Variablen " werden die Werte von Variablen angezeigt, die in der derzeit ausgeführten Methode definiert sind.
Standardmäßig verwendet GitHub Codespaces die Debugbuildkonfiguration, sodass Sie sie vor dem Debuggen nicht ändern müssen.
Öffnen Sie die Debugansicht, indem Sie im linken Menü das Symbol "Debuggen" auswählen.
Wählen Sie "Ausführen" und "Debuggen" aus. Wenn Sie gefragt werden, wählen Sie C# als Debugger aus, und wählen Sie dann "C#: Aktive Datei als Startkonfiguration debuggen" aus.
Wählen Sie die Registerkarte " Debugkonsole " aus, um die Eingabeaufforderung "Wie lautet Ihr Name?" anzuzeigen, bevor das Programm auf eine Antwort wartet.
Geben Sie eine Zeichenfolge im Fenster "Debugkonsole " als Reaktion auf die Eingabeaufforderung für einen Namen ein, und drücken Sie dann die EINGABETASTE.
Die Programmausführung wird beendet, wenn der Haltepunkt erreicht wird, und bevor die
Console.WriteLineMethode ausgeführt wird. Im Abschnitt " Locals " des Fensters "Variablen " werden die Werte von Variablen angezeigt, die in der derzeit ausgeführten Methode definiert sind.
Verwenden der Debugkonsole
Im Fenster " Debugkonsole " können Sie mit der Anwendung interagieren, die Sie debuggen. Sie können den Wert von Variablen ändern, um zu sehen, wie sich dies auf Ihr Programm auswirkt.
Wählen Sie die Registerkarte "Debugkonsole " aus.
Geben Sie
name = "Gracie"bei der Eingabeaufforderung unten im "Debugkonsole"-Fenster ein und drücken Sie die EINGABETASTE.
Geben Sie
currentDate = DateTime.Parse("2026-01-28T20:54:00Z").ToUniversalTime()unten im Fenster Debugkonsole ein und drücken Sie die EINGABETASTE.Im Fenster 'Variablen' werden die neuen Werte der Variablen
nameundcurrentDateangezeigt.Fahren Sie mit der Programmausführung fort, indem Sie auf der Symbolleiste die Schaltfläche " Weiter " auswählen. Eine weitere Möglichkeit, fortzufahren, besteht darin, F5 zu drücken.
Die im Konsolenfenster angezeigten Werte entsprechen den Änderungen, die Sie in der Debugkonsole vorgenommen haben.
Drücken Sie die EINGABETASTE , um die Anwendung zu beenden und das Debuggen zu beenden.
Festlegen eines bedingten Breakpoints
Das Programm zeigt die Zeichenfolge an, die der Benutzer eingibt. Was geschieht, wenn der Benutzer nichts eingibt? Sie können dies mit einem nützlichen Debugfeature testen, das als Bedingter Breakpoint bezeichnet wird.
Klicken Sie mit der rechten Maustaste auf den roten Punkt, der den Haltepunkt darstellt (Befehl-Taste-Klicken auf macOS). Wählen Sie im Kontextmenü " Haltepunkt bearbeiten" aus, um ein Dialogfeld zu öffnen, in dem Sie einen bedingten Ausdruck eingeben können.
Wählen Sie
Expressionim Dropdown-Menü aus, geben Sie den folgenden bedingten Ausdruck ein, und drücken Sie die EINGABETASTE.String.IsNullOrEmpty(name)
Jedes Mal, wenn der Breakpoint erreicht wird, ruft der Debugger die
String.IsNullOrEmpty(name)-Methode auf, und die Ausführung wird nur in dieser Zeile unterbrochen, wenn der Methodenaufruftruezurückgibt.Statt eines bedingten Ausdrucks können Sie eine Trefferanzahl angeben, wodurch die Programmausführung unterbrochen wird, bevor eine Anweisung eine bestimmte Anzahl von Malen ausgeführt wird. Eine weitere Option besteht darin, eine Filterbedingunganzugeben, die die Programmausführung auf der Grundlage von Attributen wie Threadbezeichner, Prozessname oder Threadname unterbricht.
Starten Sie das Programm mit dem Debuggen, indem Sie F5-drücken.
Drücken Sie auf der Registerkarte " Debugkonsole " die EINGABETASTE , wenn Sie aufgefordert werden, Ihren Namen einzugeben.
Da die angegebene Bedingung (
nameist entwedernulloder String.Empty) erfüllt wurde, beendet die Programmausführung, wenn sie den Haltepunkt erreicht, und bevor dieConsole.WriteLineMethode ausgeführt wird.Das Fenster für Variablen zeigt, dass der Wert der
name-Variable"", oder String.Empty ist.Bestätigen Sie, dass der Wert eine leere Zeichenfolge ist, indem Sie an der Eingabeaufforderung der Debugkonsole die folgende Anweisung eingeben und die EINGABETASTE drücken. Das Ergebnis ist
true.name == String.EmptyWählen Sie die Schaltfläche " Weiter " auf der Symbolleiste aus, um die Programmausführung fortzusetzen.
Drücken Sie die EINGABETASTE , um das Programm zu beenden und das Debuggen zu beenden.
Löschen Sie den Breakpoint durch Klicken auf den Punkt am linken Rand des Codefensters. Andere Möglichkeiten zum Löschen eines Haltepunkts sind, F9 zu drücken oder im Menü Run>Haltepunkt umschalten auszuwählen, wenn die Codezeile ausgewählt ist.
Wenn Sie eine Warnung erhalten, dass die Haltepunktbedingung verloren geht, wählen Sie "Haltepunkt entfernen" aus.
Schrittweises Ausführen eines Programms
Visual Studio Code ermöglicht ihnen außerdem, eine Zeile nach Zeile durch ein Programm zu durchlaufen und die Ausführung zu überwachen. Normalerweise würden Sie einen Breakpoint festlegen und den Programmablauf in einem kleinen Teil des Programmcodes verfolgen. Da dieses Programm klein ist, können Sie das gesamte Programm durchlaufen.
Legen Sie einen Haltepunkt in der Codezeile fest, der die Eingabeaufforderung "Was ist Ihr Name?" anzeigt.
Drücken Sie F5 , um mit dem Debuggen zu beginnen.
Visual Studio Code hebt die Haltepunktlinie hervor.
An diesem Punkt zeigt das Fenster "Variablen " an, dass das
argsArray leer ist undnamecurrentDateStandardwerte aufweist.Wählen Sie in der Debugsymbolleiste "Schritt in" aus, oder drücken Sie F11.
Visual Studio Code hebt die nächste Zeile hervor.
Visual Studio Code führt die
Console.WriteLineNamensaufforderung aus und hebt die nächste Ausführungszeile hervor. Die nächste Zeile ist dieConsole.ReadLinefür diename. Das Fenster "Variablen " ist unverändert, und auf der Registerkarte " Terminal " wird die Eingabeaufforderung "Wie lautet Ihr Name?" angezeigt.Wählen Sie "Schritt in" aus, oder drücken Sie F11.
Visual Studio Code hebt die
nameVariablezuweisung hervor. Das Fenster Variablen zeigt, dassnameimmer nochnullist.Antworten Sie auf die Eingabeaufforderung, indem Sie auf der Registerkarte "Terminal" eine Zeichenfolge eingeben und die EINGABETASTE drücken.
Auf der Registerkarte " Debugkonsole " wird möglicherweise nicht die Zeichenfolge angezeigt, die Sie eingeben, während Sie sie eingeben, aber die Console.ReadLine Methode erfasst Ihre Eingabe.
Wählen Sie "Schritt in" aus, oder drücken Sie F11.
Visual Studio Code hebt die
currentDateVariablezuweisung hervor. Das Fenster "Variablen" zeigt den Wert an, der vom Aufruf der Console.ReadLine Methode zurückgegeben wird. Auf der Registerkarte "Terminal " wird die Zeichenfolge angezeigt, die Sie an der Eingabeaufforderung eingegeben haben.Wählen Sie "Schritt in" aus, oder drücken Sie F11.
Das Fenster "Variablen " zeigt den Wert der
currentDateVariablen nach der Zuordnung aus der DateTime.Now Eigenschaft an.Wählen Sie "Schritt in" aus, oder drücken Sie F11.
Visual Studio Code ruft die Console.WriteLine(String, Object, Object) Methode auf. Das Konsolenfenster zeigt die formatierte Zeichenfolge an.
Wählen Sie "Schritt zurück" oder drücken Sie Shift+F11.
Das Terminal zeigt "Drücken Sie eine beliebige Taste zum Beenden..." an.
Drücken Sie eine beliebige Taste, um das Programm zu beenden.
Verwenden der Releasebuildkonfiguration
Nachdem Sie die Debugversion Ihrer Anwendung getestet haben, sollten Sie auch die Releaseversion kompilieren und testen. Die Releaseversion enthält Compileroptimierungen, die sich auf das Verhalten einer Anwendung auswirken können. Compileroptimierungen, die zur Verbesserung der Leistung entwickelt wurden, können z. B. Racebedingungen in Multithreadanwendungen erstellen.
Um die Releaseversion Ihrer Konsolenanwendung zu erstellen und zu testen, öffnen Sie das Terminal , und führen Sie den folgenden Befehl aus:
dotnet run --configuration Release
Führen Sie zum Erstellen und Testen der Releaseversion Ihrer Konsolenanwendung den folgenden Befehl im Terminal aus:
dotnet run --configuration Release HelloWorld.cs
Nächste Schritte
In diesem Lernprogramm haben Sie die Debugging-Tools von Visual Studio Code verwendet. Im nächsten Tutorial veröffentlichen Sie eine einsatzbereite Version der App.