Trace-Klasse

Stellt eine Reihe von Methoden und Eigenschaften für das Verfolgen der Ausführung von Code bereit. Die Klasse erlaubt keine Vererbung.

System.Object
  System.Diagnostics.Trace

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)

public sealed class Trace

Der Trace-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche EigenschaftStatischer MemberUnterstützt von XNA FrameworkAutoFlushRuft ab oder legt fest, ob für Listeners nach jeder Ausgabe Flush aufgerufen werden soll.
Öffentliche EigenschaftStatischer MemberCorrelationManagerRuft den Korrelations-Manager für den Thread dieser Ablaufverfolgung ab.
Öffentliche EigenschaftStatischer MemberUnterstützt von XNA FrameworkIndentLevelRuft die Einzugsebene ab oder legt diese fest.
Öffentliche EigenschaftStatischer MemberUnterstützt von XNA FrameworkIndentSizeRuft die Anzahl der Leerzeichen in einem Einzug ab oder legt diese fest.
Öffentliche EigenschaftStatischer MemberUnterstützt von XNA FrameworkListenersRuft die Auflistung der Listener für die Überwachung der Ausgabe der Ablaufverfolgung ab.
Öffentliche EigenschaftStatischer MemberUseGlobalLockRuft einen Wert ab, der angibt, ob die globale Sperre verwendet werden soll, oder legt diesen fest.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkAssert(Boolean)Überprüft eine Bedingung. Wenn die Bedingung false ist, wird ein Meldungsfeld mit der Aufrufliste angezeigt.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkAssert(Boolean, String)Überprüft eine Bedingung. Wenn die Bedingung false ist, wird eine bestimmte Meldung ausgegeben, und ein Meldungsfeld mit der Aufrufliste wird angezeigt.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkAssert(Boolean, String, String)Überprüft eine Bedingung. Wenn die Bedingung false ist, werden zwei angegebene Meldungen ausgegeben, und ein Meldungsfeld mit der Aufrufliste wird angezeigt.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkCloseEntleert den Ausgabepuffer und schließt daraufhin die Listeners.
Öffentliche MethodeUnterstützt von XNA FrameworkEquals(Object)Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.)
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkFail(String)Gibt die angegebene Fehlermeldung aus.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkFail(String, String)Gibt eine Fehlermeldung sowie eine detaillierte Fehlermeldung aus.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkFlushEntleert den Ausgabepuffer und veranlasst das Schreiben der gepufferten Daten in die Listeners.
Öffentliche MethodeUnterstützt von XNA FrameworkGetHashCodeFungiert als die Standardhashfunktion. (Von Object geerbt.)
Öffentliche MethodeUnterstützt von XNA FrameworkGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeStatischer MemberIndentErhöht den aktuellen IndentLevel um eins.
Öffentliche MethodeStatischer MemberRefreshAktualisiert die Konfigurationsdaten der Ablaufverfolgung.
Öffentliche MethodeUnterstützt von XNA FrameworkToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Öffentliche MethodeStatischer MemberTraceError(String)Schreibt eine Fehlermeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberTraceError(String, Object[])Schreibt eine Fehlermeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberTraceInformation(String)Schreibt eine Informationsmeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberTraceInformation(String, Object[])Schreibt eine Informationsmeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberTraceWarning(String)Schreibt eine Warnmeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberTraceWarning(String, Object[])Schreibt eine Warnmeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnindentVerringert den aktuellen IndentLevel um eins.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWrite(Object)Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWrite(String)Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWrite(Object, String)Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWrite(String, String)Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteIf(Boolean, Object)Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteIf(Boolean, String)Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteIf(Boolean, Object, String)Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteIf(Boolean, String, String)Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLine(Object)Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLine(String)Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLine(Object, String)Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLine(String, String)Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLineIf(Boolean, Object)Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLineIf(Boolean, String)Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLineIf(Boolean, Object, String)Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche MethodeStatischer MemberUnterstützt von XNA FrameworkWriteLineIf(Boolean, String, String)Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Zum Seitenanfang

Sie können die Eigenschaften und die Methoden der Trace-Klasse verwenden, um Releasebuilds zu instrumentieren. Über die Instrumentation können Sie die fehlerfreie Funktion der Anwendung bei realen Ausführungsbedingungen überwachen. Die Ablaufverfolgung ermöglicht das Eingrenzen und Beheben von Problemen, ohne die Ausführung eines Systems zu stören.

Diese Klasse stellt Methoden für die Anzeige eines Dialogfelds Assert und die Ausgabe einer Assertion bereit, die immer zu einem Fail führt. Diese Klasse schreibt Methoden in folgenden Variationen: Write, WriteLine, WriteIf und WriteLineIf.

Mit der BooleanSwitch-Klasse und der TraceSwitch-Klasse kann die Ausgabe der Ablaufverfolgung dynamisch gesteuert werden. Sie können die Werte dieser Schalter ändern, ohne die Anwendung erneut zu kompilieren. Informationen über das Festlegen eines Schalters mithilfe der Konfigurationsdatei finden Sie unter der Switch-Klasse und im Thema Gewusst wie: Konfigurieren von Ablaufverfolgungsschaltern.

Sie können das Ziel der Ablaufverfolgungsausgabe anpassen, indem Sie in der Listeners-Auflistung TraceListener-Instanzen hinzufügen oder diese aus dieser entfernen. Die Listeners-Auflistung wird von den Klassen Debug und Trace gemeinsam genutzt; beim Hinzufügen eines Listeners zu einer der Klassen wird der Listener beiden hinzugefügt. In der Standardeinstellung erfolgt die Ausgabe der Ablaufverfolgung über die DefaultTraceListener-Klasse.

HinweisHinweis

Einen Ablaufverfolgungslistener zur Listeners-Auflistung hinzuzufügen kann bei der Ablaufverfolgung eine Ausnahme verursachen, wenn eine vom Ablaufverfolgungslistener verwendete Ressource nicht verfügbar ist. Die Bedingungen und die Ausnahme, die ausgelöst wurde, hängen vom Ablaufverfolgungslistener ab, und können nicht in diesem Thema aufgelistet werden. Möglicherweise empfiehlt es sich, Aufrufe der Trace-Methoden in try/catch-Blocks auszuführen, um eventuelle Ausnahmen von Ablaufverfolgungslistenern zu erkennen und zu verarbeiten.

HinweisHinweis

Wenn Sie Ablaufverfolgungslistener für teilweise vertrauenswürdigen Code hinzufügen, erhalten Sie eine SecurityException-Ausnahme ab, da das Hinzufügen von Ablaufverfolgungslistenern UnmanagedCode-Berechtigung erfordert. Zum Erfassen von teilweise vertrauenswürdigem Code in einem Sandkasten in Visual Studio ausgeführt wird, fügen Sie keine Ablaufverfolgungslistener hinzu. Stattdessen zeigen Sie die Trace und Debug-Nachrichten im Ausgabe-Fenster angezeigt.

Die Trace-Klasse stellt Eigenschaften bereit, mit denen die Ebene von Indent sowie IndentSize abgerufen oder festgelegt und eine Ausführung von AutoFlush nach jeder Ausgabe festgelegt werden kann.

Zum Festlegen von AutoFlush und IndentSize für Trace bearbeiten Sie die Konfigurationsdatei, die dem Namen der Anwendung entspricht. Die Konfigurationsdatei sollte wie im folgenden Beispiel formatiert werden:

<configuration>
  <system.diagnostics>
    <trace autoflush="false" indentsize="3" />
  </system.diagnostics>
</configuration>

Das ConditionalAttribute-Attribut wird für die Methoden von Trace übernommen. Compiler, die ConditionalAttribute unterstützen, ignorieren Aufrufe dieser Methoden, sofern als Symbol für die bedingte Kompilierung nicht "TRACE" definiert ist. In der Dokumentation des Compilers finden Sie Informationen dazu, wie Sie ermitteln, ob ConditionalAttribute unterstützt, sowie die Syntax zum Definieren eines Symbols für die bedingte Kompilierung.

HinweisHinweis

In Visual Studio-Projekten standardmäßig dem Namen "DEBUGES" Symbol für die bedingte Kompilierung wird für Debugbuilds definiert, und "Symbol" ABLAUFVERFOLGUNGS für beide debuggen und Releasebuilds definiert. Informationen zum Deaktivieren dieses Verhaltens finden Sie in der Visual Studio-Dokumentation.

Um das "ABLAUFVERFOLGUNGS" Symbol für die bedingte Kompilierung in C# zu definieren, fügen Sie die Option /d:TRACE der Compilerbefehlszeile wenn Sie den Code mithilfe einer Befehlszeile kompilieren #define TRACE hinzu, oder fügen Sie am Anfang der Datei hinzu. In Visual Basic fügen Sie der Compilerbefehlszeile die /d:TRACE=True-Option hinzu, oder fügen Sie der Datei #Const TRACE=True hinzu.

ConditionalAttribute wird vom C++-Compiler nicht unterstützt. Um die entsprechende Funktionalität bereitzustellen, müssen Sie Aufrufe der Methoden von Trace in einem #if defined(TRACE) ... #endif-Block einschließen und der Compilerbefehlszeile die /DTRACE-Option hinzufügen oder der Datei #define TRACE hinzufügen.

Im folgenden Beispiel werden mit Trace Anfang und Ende für die Programmausführung angezeigt. Außerdem wird in dem Beispiel die Ausgabe der Ablaufverfolgung mit der Trace.Indent-Methode und der Trace.Unindent-Methode hervorgehoben. Ein vollständigeres Beispiel für die Verwendung von Trace finden Sie unter Gewusst wie: Hinzufügen von Ablaufverfolgungsanweisungen zu Anwendungscode.


// Specify /d:TRACE when compiling.

using System;
using System.Diagnostics;

class Test
{
    static void Main()
    {
       Trace.Listeners.Add(new TextWriterTraceListener(Console.Out));
       Trace.AutoFlush = true;
       Trace.Indent();
       Trace.WriteLine("Entering Main");
       Console.WriteLine("Hello World.");
       Trace.WriteLine("Exiting Main"); 
       Trace.Unindent();
    }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Dieser Typ ist threadsicher.

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft