Trace.WriteLineIf Metoda

Definicja

Zapisuje informacje o śledzeniu do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

Przeciążenia

WriteLineIf(Boolean, Object, String)

Zapisuje nazwę kategorii i wartość metody obiektu ToString() do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

WriteLineIf(Boolean, Object)

Zapisuje wartość metody obiektu ToString() do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

WriteLineIf(Boolean, String)

Zapisuje komunikat do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

WriteLineIf(Boolean, String, String)

Zapisuje nazwę kategorii i komunikat do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

WriteLineIf(Boolean, Object, String)

Źródło:
Trace.cs
Źródło:
Trace.cs
Źródło:
Trace.cs

Zapisuje nazwę kategorii i wartość metody obiektu ToString() do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

public:
 static void WriteLineIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object? value, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object value, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * obj * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, value As Object, category As String)

Parametry

condition
Boolean

true spowodować napisanie wiadomości; w przeciwnym razie , false.

value
Object

Obiekt Object , którego nazwa jest wysyłana do elementu Listeners.

category
String

Nazwa kategorii, używana do organizowania danych wyjściowych.

Atrybuty

Przykłady

W poniższym przykładzie zostanie utworzona nazwana TraceSwitchgeneralSwitch. Ten przełącznik jest ustawiany poza przykładem kodu.

Jeśli przełącznik jest ustawiony na TraceLevelError lub wyższy, przykład zwraca pierwszy komunikat o błędzie do .Listeners Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .

Następnie, jeśli TraceLevel parametr ma wartość Verbose, przykład zwraca drugi komunikat o błędzie w tym samym wierszu co pierwszy komunikat. Po drugim komunikacie następuje terminator wiersza.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( Object^ myObject, String^ category )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set
      // to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, 
         "Invalid object for category. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         myObject, category );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod(Object myObject, string category) {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object for category. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject, category);
 }
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")

Public Shared Sub MyErrorMethod(myObject As Object, category As String)
    ' Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object for category. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject, category)
End Sub

Uwagi

Domyślnie dane wyjściowe są zapisywane w wystąpieniu klasy DefaultTraceListener.

Parametr category może służyć do grupowania komunikatów wyjściowych.

Ta metoda wywołuje metodę WriteLine odbiornika śledzenia.

Uwagi dotyczące dziedziczenia

Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then instrukcji zamiast instrukcji.WriteLineIf(Boolean, String) Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy, gdy śledzenie jest wyłączone, ponieważ jeśli mySwitch.TraceError zostanie obliczona false wartość , nie wywołaj metody WriteLine(String). Drugi przykład zawsze wywołuje metodę WriteLineIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError nie są false generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.

Pierwszy przykład

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

Drugi przykład

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

Zobacz też

Dotyczy

WriteLineIf(Boolean, Object)

Źródło:
Trace.cs
Źródło:
Trace.cs
Źródło:
Trace.cs

Zapisuje wartość metody obiektu ToString() do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

public:
 static void WriteLineIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object? value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object value);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * obj -> unit
Public Shared Sub WriteLineIf (condition As Boolean, value As Object)

Parametry

condition
Boolean

true spowodować napisanie wiadomości; w przeciwnym razie , false.

value
Object

Obiekt Object , którego nazwa jest wysyłana do elementu Listeners.

Atrybuty

Przykłady

W poniższym przykładzie zostanie utworzona nazwana TraceSwitchgeneralSwitch. Ten przełącznik jest ustawiany poza przykładem kodu.

Jeśli przełącznik jest ustawiony na TraceLevelError lub wyższy, przykład zwraca pierwszy komunikat o błędzie do .Listeners Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .

Następnie, jeśli TraceLevel parametr ma wartość Verbose, przykład zwraca nazwę obiektu w tym samym wierszu co pierwszy komunikat. Po drugim komunikacie następuje terminator wiersza.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( Object^ myObject )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level 
      // is set to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "Invalid object. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, myObject );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod(Object myObject) {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject);
 }
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")


Public Shared Sub MyErrorMethod(myObject As Object)
    ' Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject)
End Sub

Uwagi

Domyślnie dane wyjściowe są zapisywane w wystąpieniu klasy DefaultTraceListener.

Ta metoda wywołuje metodę WriteLine odbiornika śledzenia.

Uwagi dotyczące dziedziczenia

Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then instrukcji zamiast instrukcji.WriteLineIf(Boolean, String) Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy, gdy śledzenie jest wyłączone, ponieważ jeśli mySwitch.TraceError zostanie obliczona false wartość , nie wywołaj metody WriteLine(String). Drugi przykład zawsze wywołuje metodę WriteLineIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError nie są false generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.

Pierwszy przykład

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

Drugi przykład

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

Zobacz też

Dotyczy

WriteLineIf(Boolean, String)

Źródło:
Trace.cs
Źródło:
Trace.cs
Źródło:
Trace.cs

Zapisuje komunikat do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

public:
 static void WriteLineIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string? message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string message);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, message As String)

Parametry

condition
Boolean

true spowodować napisanie wiadomości; w przeciwnym razie , false.

message
String

Komunikat do zapisu.

Atrybuty

Przykłady

W poniższym przykładzie zostanie utworzona nazwana TraceSwitchgeneralSwitch. Ten przełącznik jest ustawiany poza przykładem kodu.

Jeśli przełącznik jest ustawiony na TraceLevelError lub wyższy, przykład zwraca pierwszy komunikat o błędzie do .Listeners Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .

Następnie, jeśli TraceLevel parametr ma wartość Verbose, przykład zwraca drugi komunikat o błędzie w tym samym wierszu co pierwszy komunikat. Po drugim komunikacie następuje terminator wiersza.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod()
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set to
      // Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "My error message. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         "My second error message." );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod() {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.");
 }
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")

Public Shared Sub MyErrorMethod()
    ' Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.")
End Sub

Uwagi

Domyślnie dane wyjściowe są zapisywane w wystąpieniu klasy DefaultTraceListener.

Ta metoda wywołuje metodę WriteLine odbiornika śledzenia.

Uwagi dotyczące dziedziczenia

Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then instrukcji zamiast instrukcji.WriteLineIf(Boolean, String) Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy, gdy śledzenie jest wyłączone, ponieważ jeśli mySwitch.TraceError zostanie obliczona false wartość , nie wywołaj metody WriteLine(String). Drugi przykład zawsze wywołuje metodę WriteLineIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError nie są false generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.

Pierwszy przykład

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

Drugi przykład

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

Zobacz też

Dotyczy

WriteLineIf(Boolean, String, String)

Źródło:
Trace.cs
Źródło:
Trace.cs
Źródło:
Trace.cs

Zapisuje nazwę kategorii i komunikat do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to true.

public:
 static void WriteLineIf(bool condition, System::String ^ message, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string? message, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string message, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * string * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, message As String, category As String)

Parametry

condition
Boolean

true spowodować napisanie wiadomości; w przeciwnym razie , false.

message
String

Komunikat do zapisu.

category
String

Nazwa kategorii, używana do organizowania danych wyjściowych.

Atrybuty

Przykłady

W poniższym przykładzie zostanie utworzona nazwana TraceSwitchgeneralSwitch. Ten przełącznik jest ustawiany poza przykładem kodu.

Jeśli przełącznik jest ustawiony na TraceLevelError lub wyższy, przykład zwraca pierwszy komunikat o błędzie do .Listeners Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .

Następnie, jeśli TraceLevel parametr jest ustawiony na Verbose, przykład zwraca drugi komunikat o błędzie i w category tym samym wierszu co pierwszy komunikat. Po drugim komunikacie następuje terminator wiersza.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( String^ category )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set 
      // to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "My error message. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         "My second error message.", category );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod(string category) {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.", category);
 }
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")

Public Shared Sub MyErrorMethod(category As String)
    ' Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, _
        "My second error message.", category)
End Sub

Uwagi

Domyślnie dane wyjściowe są zapisywane w wystąpieniu klasy DefaultTraceListener.

Parametr category może służyć do grupowania komunikatów wyjściowych.

Ta metoda wywołuje metodę WriteLine odbiornika śledzenia.

Uwagi dotyczące dziedziczenia

Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then instrukcji zamiast instrukcji.WriteLineIf(Boolean, String) Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy, gdy śledzenie jest wyłączone, ponieważ jeśli mySwitch.TraceError zostanie obliczona false wartość , nie wywołaj metody WriteLine(String). Drugi przykład zawsze wywołuje metodę WriteLineIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError nie są false generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.

Pierwszy przykład

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

Drugi przykład

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

Zobacz też

Dotyczy