Trace.WriteIf Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menulis informasi tentang jejak ke pendengar jejak dalam koleksi Listeners jika kondisi true
.
Overload
WriteIf(Boolean, String, String) |
Menulis nama kategori dan pesan ke pendengar jejak dalam koleksi Listeners jika kondisi |
WriteIf(Boolean, Object, String) |
Menulis nama kategori dan nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi |
WriteIf(Boolean, Object) |
Menulis nilai metode ToString() objek ke pendengar jejak dalam koleksi Listeners jika kondisi |
WriteIf(Boolean, String) |
Menulis pesan ke pendengar jejak dalam koleksi Listeners jika kondisi |
WriteIf(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 WriteIf(bool condition, System::String ^ message, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, string? message, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, string message, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteIf : bool * string * string -> unit
Public Shared Sub WriteIf (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 TraceLevelVerbose
, contoh menghasilkan pesan kesalahan pertama ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.
Kemudian, jika TraceLevel diatur ke Error
atau lebih tinggi, 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 Verbose.
Trace::WriteIf( generalSwitch->TraceVerbose,
String::Concat( myObject,
" is not a valid object for category: " ), category );
// Write a second message if the TraceSwitch level is set
// to Error or higher.
Trace::WriteLineIf( generalSwitch->TraceError,
" Please use a different 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 Verbose.
Trace.WriteIf(generalSwitch.TraceVerbose, myObject.ToString() +
" is not a valid object for category: ", category);
// Write a second message if the TraceSwitch level is set to Error or higher.
Trace.WriteLineIf(generalSwitch.TraceError, " Please use a different 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 Verbose.
Trace.WriteIf(generalSwitch.TraceVerbose, myObject.ToString() & _
" is not a valid object for category: ", category)
' Write a second message if the TraceSwitch level is set to Error or higher.
Trace.WriteLineIf(generalSwitch.TraceError, _
" Please use a different category.")
End Sub
Keterangan
Secara default, output ditulis ke instans DefaultTraceListener.
Parameter category
dapat digunakan untuk mengelompokkan pesan output.
Metode ini memanggil metode Write pendengar jejak.
Catatan Bagi Inheritor
Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then
alih-alih menggunakan pernyataan WriteIf(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 Write(String). Contoh kedua selalu memanggil WriteIf(Boolean, String), bahkan ketika mySwitch.TraceError
false
dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.
Contoh pertama
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Contoh kedua
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lihat juga
Berlaku untuk
WriteIf(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 WriteIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, object? value, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, object value, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteIf : bool * obj * string -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object, category As String)
Parameter
- condition
- Boolean
true
membuat pesan ditulis; jika tidak, false
.
- 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 TraceLevelVerbose
, contoh menghasilkan nama myObject
dan category
ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.
Kemudian, jika TraceLevel diatur ke Error
atau lebih tinggi, 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 Verbose.
Trace::WriteIf( generalSwitch->TraceVerbose, myObject, category );
// Write a second message if the TraceSwitch level is set to
// Error or higher.
Trace::WriteLineIf( generalSwitch->TraceError,
" Object is not valid for this 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 Verbose.
Trace.WriteIf(generalSwitch.TraceVerbose, myObject, category);
// Write a second message if the TraceSwitch level is set to Error or higher.
Trace.WriteLineIf(generalSwitch.TraceError, " Object is not valid for this 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 Verbose.
Trace.WriteIf(generalSwitch.TraceVerbose, myObject, category)
' Write a second message if the TraceSwitch level is set to Error or higher.
Trace.WriteLineIf(generalSwitch.TraceError, _
" Object is not valid for this category.")
End Sub
Keterangan
Secara default, output ditulis ke instans DefaultTraceListener.
Parameter category
dapat digunakan untuk mengelompokkan pesan output.
Metode ini memanggil metode Write pendengar jejak.
Catatan Bagi Inheritor
Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then
alih-alih menggunakan pernyataan WriteIf(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 Write(String). Contoh kedua selalu memanggil WriteIf(Boolean, String), bahkan ketika mySwitch.TraceError
false
dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.
Contoh pertama
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Contoh kedua
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lihat juga
Berlaku untuk
WriteIf(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 WriteIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, object? value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, object value);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteIf : bool * obj -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object)
Parameter
- condition
- Boolean
true
membuat pesan ditulis; jika tidak, false
.
- 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 nama depan parameter nilai ke Listeners. Untuk informasi tentang menambahkan pendengar ke koleksi Listeners, lihat kelas TraceListenerCollection.
Kemudian, jika TraceLevel diatur ke Verbose
, contoh menghasilkan pesan 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, myObject );
// Write a second message if the TraceSwitch level is set
// to Verbose.
Trace::WriteLineIf( generalSwitch->TraceVerbose,
" is not a valid value for this method." );
#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, myObject);
// Write a second message if the TraceSwitch level is set to Verbose.
Trace.WriteLineIf(generalSwitch.TraceVerbose, " is not a valid value for this method.");
}
' 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, myObject)
' Write a second message if the TraceSwitch level is set to Verbose.
Trace.WriteLineIf(generalSwitch.TraceVerbose, _
" is not a valid value for this method.")
End Sub
Keterangan
Secara default, output ditulis ke instans DefaultTraceListener.
Metode ini memanggil metode Write pendengar jejak.
Catatan Bagi Inheritor
Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then
alih-alih menggunakan pernyataan WriteIf(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 Write(String). Contoh kedua selalu memanggil WriteIf(Boolean, String), bahkan ketika mySwitch.TraceError
false
dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.
Contoh pertama
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Contoh kedua
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lihat juga
Berlaku untuk
WriteIf(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 WriteIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, string? message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteIf (bool condition, string message);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteIf : bool * string -> unit
Public Shared Sub WriteIf (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 Write pendengar jejak.
Catatan Bagi Inheritor
Anda dapat meminimalkan hukuman performa instrumen aplikasi Anda dengan menggunakan pernyataan If...Then
alih-alih menggunakan pernyataan WriteIf(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 Write(String). Contoh kedua selalu memanggil WriteIf(Boolean, String), bahkan ketika mySwitch.TraceError
false
dan tidak ada output pelacakan yang diproduksi. Ini dapat mengakibatkan eksekusi kode kompleks yang tidak perlu.
Contoh pertama
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Contoh kedua
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");