Vorgehensweise: Hinzufügen von Ablaufverfolgungsanweisungen zu Anwendungscode
Hinweis
Dieser Artikel gilt für das .NET Framework. Er gilt nicht für neuere Implementierungen von .NET, einschließlich .NET 6 und höherer Versionen.
Die am häufigsten für die Ablaufverfolgung verwendeten Methoden zum Schreiben von Ausgaben in Listener: Write, WriteIf, WriteLine, WriteLineIf, Assert und Fail. Diese Methoden können in zwei Kategorien unterteilt werden: Write, WriteLine und Fail geben alle Ausgaben ohne Bedingungen aus, während WriteIf, WriteLineIf und Assert eine boolesche Bedingung testen und die Ausgabe auf Basis des Werts dieser Bedingung erstellen oder nicht erstellen. WriteIf und WriteLineIf führen zu einer Ausgabe, wenn die Bedingung true
entspricht. Assert führt zu einer Ausgabe, wenn die Bedingung false
entspricht.
Berücksichtigen Sie beim Entwerfen Ihrer Ablaufverfolgungs- und Debugstrategie, wie die Ausgabe aussehen soll. Mehrere Write-Anweisungen, die mit beziehungslosen Informationen gefüllt sind, erstellen ein Protokoll, das schwer zu lesen ist. Auf der anderen Seite kann möglicherweise schwer unterschieden werden, welche Informationen zusammengehören, wenn zusammengehörige Anweisungen mithilfe von WriteLine in separaten Zeilen angezeigt werden. Verwenden Sie im Allgemeinen mehrere Write-Anweisungen, wenn Sie Informationen aus mehreren Quellen zu einer einzelnen Informationsmeldung zusammenfassen möchten. Verwenden Sie die WriteLine-Anweisung, wenn Sie eine einzelne vollständige Meldung erstellen möchten.
So schreiben Sie eine vollständige Zeile
Rufen Sie die WriteLine-Methode oder WriteLineIf-Methode auf.
Es wird ein Wagenrücklauf am Ende der von dieser Methode zurückgegebenen Nachricht angefügt, sodass die nächste von Write, WriteIf, WriteLine oder WriteLineIf zurückgegebene Nachricht in der darauffolgenden Zeile beginnt:
Dim errorFlag As Boolean = False Trace.WriteLine("Error in AppendData procedure.") Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.")
bool errorFlag = false; System.Diagnostics.Trace.WriteLine ("Error in AppendData procedure."); System.Diagnostics.Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.");
So schreiben Sie eine Teilzeile
Rufen Sie die Write-Methode oder WriteIf-Methode auf.
Die nächste von Write, WriteIf, WriteLine oder WriteLineIf ausgegebene Nachricht beginnt auf derselben Zeile wie die Nachricht, die von Write- oder WriteIf-Anweisungen ausgegeben wurde:
Dim errorFlag As Boolean = False Trace.WriteIf(errorFlag, "Error in AppendData procedure.") Debug.WriteIf(errorFlag, "Transaction abandoned.") Trace.Write("Invalid value for data request")
bool errorFlag = false; System.Diagnostics.Trace.WriteIf(errorFlag, "Error in AppendData procedure."); System.Diagnostics.Debug.WriteIf(errorFlag, "Transaction abandoned."); Trace.Write("Invalid value for data request");
So überprüfen Sie, ob bestimmte Bedingungen vor oder nach dem Ausführen einer Methode vorhanden sind
Rufen Sie die Assert-Methode auf.
Dim i As Integer = 4 Trace.Assert(i = 5, "i is not equal to 5.")
int i = 4; System.Diagnostics.Trace.Assert(i == 5, "i is not equal to 5.");
Hinweis
Sie können Assert bei der Ablaufverfolgung und beim Debuggen verwenden. In diesem Beispiel wird die Aufrufliste an alle Listener in der Listener-Auflistung ausgegeben. Weitere Informationen finden Sie unter Assertionen in verwaltetem Code und Debug.Assert.