Bagikan melalui


Trace.WriteLineIf Metode

Definisi

Menulis informasi tentang jejak ke pendengar jejak dalam koleksi Listeners jika kondisi true.

Overload

WriteLineIf(Boolean, Object, String)

Menulis nama kategori dan nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi true.

WriteLineIf(Boolean, Object)

Menulis nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi true.

WriteLineIf(Boolean, String)

Menulis pesan ke pendengar jejak dalam koleksi Listeners jika kondisi true.

WriteLineIf(Boolean, String, String)

Menulis nama kategori dan pesan ke pendengar jejak dalam koleksi Listeners jika kondisi true.

WriteLineIf(Boolean, Object, String)

Sumber:
Trace.cs
Sumber:
Trace.cs
Sumber:
Trace.cs

Menulis nama kategori dan nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi 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)

Parameter

condition
Boolean

true membuat pesan ditulis; jika tidak, false.

value
Object

Object yang namanya dikirim ke Listeners.

category
String

Nama kategori yang digunakan untuk mengatur output.

Atribut

Contoh

Contoh berikut membuat TraceSwitch bernama generalSwitch. Sakelar ini diatur di luar sampel kode.

Jika sakelar diatur ke TraceLevelError atau lebih tinggi, contoh menghasilkan pesan kesalahan pertama ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.

Kemudian, jika TraceLevel diatur ke Verbose, contoh menghasilkan pesan kesalahan kedua pada baris yang sama dengan pesan pertama. Pesan kedua diikuti oleh terminator baris.

// 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

Keterangan

Secara default, output ditulis ke instans DefaultTraceListener.

Parameter category dapat digunakan untuk mengelompokkan pesan output.

Metode ini memanggil metode WriteLine pendengar jejak.

Catatan Bagi Inheritor

Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then alih-alih menggunakan pernyataan WriteLineIf(Boolean, String). Dua contoh kode berikut mengirim pesan penelusuran kesalahan yang sama. Namun, contoh pertama jauh lebih cepat saat pelacakan nonaktif, karena jika mySwitch.TraceError mengevaluasi ke false Anda tidak memanggil WriteLine(String). Contoh kedua selalu memanggil WriteLineIf(Boolean, String), bahkan ketika mySwitch.TraceErrorfalse dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.

Contoh pertama

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

Contoh kedua

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

Lihat juga

Berlaku untuk

WriteLineIf(Boolean, Object)

Sumber:
Trace.cs
Sumber:
Trace.cs
Sumber:
Trace.cs

Menulis nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi 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)

Parameter

condition
Boolean

true membuat pesan ditulis; jika tidak, false.

value
Object

Object yang namanya dikirim ke Listeners.

Atribut

Contoh

Contoh berikut membuat TraceSwitch bernama generalSwitch. Sakelar ini diatur di luar sampel kode.

Jika sakelar diatur ke TraceLevelError atau lebih tinggi, contoh menghasilkan pesan kesalahan pertama ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.

Kemudian, jika TraceLevel diatur ke Verbose, contoh menghasilkan nama objek pada baris yang sama dengan pesan pertama. Pesan kedua diikuti oleh terminator baris.

// 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

Keterangan

Secara default, output ditulis ke instans DefaultTraceListener.

Metode ini memanggil metode WriteLine pendengar jejak.

Catatan Bagi Inheritor

Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then alih-alih menggunakan pernyataan WriteLineIf(Boolean, String). Dua contoh kode berikut mengirim pesan penelusuran kesalahan yang sama. Namun, contoh pertama jauh lebih cepat saat pelacakan nonaktif, karena jika mySwitch.TraceError mengevaluasi ke false Anda tidak memanggil WriteLine(String). Contoh kedua selalu memanggil WriteLineIf(Boolean, String), bahkan ketika mySwitch.TraceErrorfalse dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.

Contoh pertama

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

Contoh kedua

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

Lihat juga

Berlaku untuk

WriteLineIf(Boolean, String)

Sumber:
Trace.cs
Sumber:
Trace.cs
Sumber:
Trace.cs

Menulis pesan ke pendengar jejak dalam koleksi Listeners jika kondisi 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)

Parameter

condition
Boolean

true membuat pesan ditulis; jika tidak, false.

message
String

Pesan untuk ditulis.

Atribut

Contoh

Contoh berikut membuat TraceSwitch bernama generalSwitch. Sakelar ini diatur di luar sampel kode.

Jika sakelar diatur ke TraceLevelError atau lebih tinggi, contoh menghasilkan pesan kesalahan pertama ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.

Kemudian, jika TraceLevel diatur ke Verbose, contoh menghasilkan pesan kesalahan kedua pada baris yang sama dengan pesan pertama. Pesan kedua diikuti oleh terminator baris.

// 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

Keterangan

Secara default, output ditulis ke instans DefaultTraceListener.

Metode ini memanggil metode WriteLine pendengar jejak.

Catatan Bagi Inheritor

Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then alih-alih menggunakan pernyataan WriteLineIf(Boolean, String). Dua contoh kode berikut mengirim pesan penelusuran kesalahan yang sama. Namun, contoh pertama jauh lebih cepat saat pelacakan nonaktif, karena jika mySwitch.TraceError mengevaluasi ke false Anda tidak memanggil WriteLine(String). Contoh kedua selalu memanggil WriteLineIf(Boolean, String), bahkan ketika mySwitch.TraceErrorfalse dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.

Contoh pertama

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

Contoh kedua

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

Lihat juga

Berlaku untuk

WriteLineIf(Boolean, String, String)

Sumber:
Trace.cs
Sumber:
Trace.cs
Sumber:
Trace.cs

Menulis nama kategori dan pesan ke pendengar jejak dalam koleksi Listeners jika kondisi 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)

Parameter

condition
Boolean

true membuat pesan ditulis; jika tidak, false.

message
String

Pesan untuk ditulis.

category
String

Nama kategori yang digunakan untuk mengatur output.

Atribut

Contoh

Contoh berikut membuat TraceSwitch bernama generalSwitch. Sakelar ini diatur di luar sampel kode.

Jika sakelar diatur ke TraceLevelError atau lebih tinggi, contoh menghasilkan pesan kesalahan pertama ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.

Kemudian, jika TraceLevel diatur ke Verbose, contoh menghasilkan pesan kesalahan kedua dan category pada baris yang sama dengan pesan pertama. Pesan kedua diikuti oleh terminator baris.

// 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

Keterangan

Secara default, output ditulis ke instans DefaultTraceListener.

Parameter category dapat digunakan untuk mengelompokkan pesan output.

Metode ini memanggil metode WriteLine pendengar jejak.

Catatan Bagi Inheritor

Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then alih-alih menggunakan pernyataan WriteLineIf(Boolean, String). Dua contoh kode berikut mengirim pesan penelusuran kesalahan yang sama. Namun, contoh pertama jauh lebih cepat saat pelacakan nonaktif, karena jika mySwitch.TraceError mengevaluasi ke false Anda tidak memanggil WriteLine(String). Contoh kedua selalu memanggil WriteLineIf(Boolean, String), bahkan ketika mySwitch.TraceErrorfalse dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.

Contoh pertama

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

Contoh kedua

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

Lihat juga

Berlaku untuk