Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Trace-Klasse

Stellt eine Reihe von Methoden und Eigenschaften für das Verfolgen der Ausführung von Code bereit. Diese Klasse kann nicht vererbt werden.

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.

  Name Beschreibung
Öffentliche Eigenschaft Statischer Member Unterstützt von XNA Framework AutoFlush Ruft ab oder legt fest, ob für Listeners nach jeder Ausgabe Flush aufgerufen werden soll.
Öffentliche Eigenschaft Statischer Member CorrelationManager Ruft den Korrelations-Manager für den Thread dieser Ablaufverfolgung ab.
Öffentliche Eigenschaft Statischer Member Unterstützt von XNA Framework IndentLevel Ruft die Einzugsebene ab oder legt diese fest.
Öffentliche Eigenschaft Statischer Member Unterstützt von XNA Framework IndentSize Ruft die Anzahl der Leerzeichen in einem Einzug ab oder legt diese fest.
Öffentliche Eigenschaft Statischer Member Unterstützt von XNA Framework Listeners Ruft die Auflistung der Listener für die Überwachung der Ausgabe der Ablaufverfolgung ab.
Öffentliche Eigenschaft Statischer Member UseGlobalLock Ruft einen Wert ab, der angibt, ob die globale Sperre verwendet werden soll, oder legt diesen fest.
Zum Seitenanfang
  Name Beschreibung
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Assert(Boolean) Überprüft eine Bedingung. Wenn die Bedingung false ist, wird ein Meldungsfeld mit der Aufrufliste angezeigt.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Assert(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 Methode Statischer Member Unterstützt von XNA Framework Assert(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 Methode Statischer Member Unterstützt von XNA Framework Close Entleert den Ausgabepuffer und schließt daraufhin die Listeners.
Öffentliche Methode Unterstützt von XNA Framework Equals(Object) Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.)
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Fail(String) Gibt die angegebene Fehlermeldung aus.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Fail(String, String) Gibt eine Fehlermeldung sowie eine detaillierte Fehlermeldung aus.
Geschützte Methode Unterstützt von XNA Framework Finalize Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der automatische Speicherbereinigung freigegeben wird. (Von Object geerbt.)
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Flush Entleert den Ausgabepuffer und veranlasst das Schreiben der gepufferten Daten in die Listeners.
Öffentliche Methode Unterstützt von XNA Framework GetHashCode Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.)
Öffentliche Methode Unterstützt von XNA Framework GetType Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche Methode Statischer Member Indent Erhöht den aktuellen IndentLevel um eins.
Geschützte Methode Unterstützt von XNA Framework MemberwiseClone Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Öffentliche Methode Statischer Member Refresh Aktualisiert die Konfigurationsdaten der Ablaufverfolgung.
Öffentliche Methode Unterstützt von XNA Framework ToString Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Öffentliche Methode Statischer Member TraceError(String) Schreibt eine Fehlermeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member TraceError(String, Object[]) Schreibt eine Fehlermeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member TraceInformation(String) Schreibt eine Informationsmeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member TraceInformation(String, Object[]) Schreibt eine Informationsmeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member TraceWarning(String) Schreibt eine Warnmeldung unter Verwendung der angegebenen Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member TraceWarning(String, Object[]) Schreibt eine Warnmeldung unter Verwendung des angegebenen Objektarrays und der Formatierungsinformationen in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unindent Verringert den aktuellen IndentLevel um eins.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Write(Object) Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Write(String) Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Write(Object, String) Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework Write(String, String) Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteIf(Boolean, Object) Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteIf(Boolean, String) Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteIf(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 Methode Statischer Member Unterstützt von XNA Framework WriteIf(Boolean, String, String) Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLine(Object) Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLine(String) Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLine(Object, String) Schreibt einen Kategorienamen und den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLine(String, String) Schreibt einen Kategorienamen und eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLineIf(Boolean, Object) Schreibt den Wert der ToString-Methode des Objekts in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLineIf(Boolean, String) Schreibt eine Meldung in die Ablaufverfolgungslistener in der Listeners-Auflistung, wenn eine Bedingung true ist.
Öffentliche Methode Statischer Member Unterstützt von XNA Framework WriteLineIf(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 Methode Statischer Member Unterstützt von XNA Framework WriteLineIf(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.

Hinweis Hinweis

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.

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.

Wenn Sie in C# und J# als Symbol für die bedingte Kompilierung "TRACE" definieren möchten, fügen Sie in der Compilerbefehlszeile beim Kompilieren des Codes die /d:TRACE-Option hinzu, oder fügen Sie am Anfang der Datei #define TRACE ein. 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.

In Visual Studio 2005-Projekten ist für Debugbuilds standardmäßig das Symbol für die bedingte Kompilierung "DEBUG" definiert, und für Debug- und Releasebuilds ist das Symbol "TRACE" definiert. Informationen zum Deaktivieren dieses Verhaltens finden Sie in der Dokumentation zu Visual Studio 2005.

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, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

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

Dieser Typ ist threadsicher.

Datum

Versionsgeschichte

Grund

Juni 2010

Einem vollständigen Beispiel im Abschnitt "Beispiele" wurde ein Link hinzugefügt.

Kundenfeedback.

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ