Trace.WriteIf Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapisuje informacje o śledzeniu do odbiorników śledzenia w kolekcji, Listeners jeśli warunek to true
.
Przeciążenia
WriteIf(Boolean, String, String) |
Zapisuje nazwę kategorii i komunikat do odbiorników śledzenia w kolekcji, Listeners jeśli warunek to |
WriteIf(Boolean, Object, String) |
Zapisuje nazwę kategorii i wartość metody obiektu ToString() do odbiorników śledzenia w Listeners kolekcji, jeśli warunek to |
WriteIf(Boolean, Object) |
Zapisuje wartość metody obiektu ToString() do odbiorników śledzenia w kolekcji, Listeners jeśli warunek to |
WriteIf(Boolean, String) |
Zapisuje komunikat do odbiorników śledzenia w kolekcji, Listeners jeśli warunek to |
WriteIf(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 kolekcji, Listeners jeśli warunek to 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)
Parametry
- condition
- Boolean
true
w celu spowodowania zapisania 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 ustawiony poza przykładem kodu.
Jeśli przełącznik jest ustawiony na TraceLevelVerbose
wartość , przykład zwraca pierwszy komunikat o błędzie do elementu Listeners. Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .
Następnie, jeśli parametr TraceLevel jest ustawiony na Error
lub wyższy, przykład generuje 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 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
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ę Write odbiornika śledzenia.
Uwagi dotyczące dziedziczenia
Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then
instrukcji zamiast instrukcji using WriteIf(Boolean, String) . Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy podczas śledzenia jest wyłączony, ponieważ jeśli mySwitch.TraceError
oceniasz false
, że nie wywołujesz metody Write(String). Drugi przykład zawsze wywołuje metodę WriteIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError
false
nie są generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.
Pierwszy przykład
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Drugi przykład
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Zobacz też
Dotyczy
WriteIf(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 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)
Parametry
- condition
- Boolean
true
w celu spowodowania zapisania wiadomości; w przeciwnym razie , false
.
- 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 ustawiony poza przykładem kodu.
Jeśli przełącznik jest ustawiony na TraceLevelVerbose
wartość , przykład zwraca nazwę myObject
elementu i na category
Listenerswartość . Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .
Następnie, jeśli parametr TraceLevel jest ustawiony na Error
lub wyższy, przykład generuje 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 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
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ę Write odbiornika śledzenia.
Uwagi dotyczące dziedziczenia
Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then
instrukcji zamiast instrukcji using WriteIf(Boolean, String) . Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy podczas śledzenia jest wyłączony, ponieważ jeśli mySwitch.TraceError
oceniasz false
, że nie wywołujesz metody Write(String). Drugi przykład zawsze wywołuje metodę WriteIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError
false
nie są generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.
Pierwszy przykład
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Drugi przykład
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Zobacz też
Dotyczy
WriteIf(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 kolekcji, Listeners jeśli warunek to 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)
Parametry
- condition
- Boolean
true
w celu spowodowania zapisania wiadomości; w przeciwnym razie , false
.
- Atrybuty
Przykłady
W poniższym przykładzie zostanie utworzona nazwana TraceSwitchgeneralSwitch
. Ten przełącznik jest ustawiony poza przykładem kodu.
Jeśli przełącznik jest ustawiony na TraceLevelError
wartość lub wyższą, przykład zwraca nazwę pierwszego parametru wartości na Listenerswartość . Aby uzyskać informacje na temat dodawania odbiornika do Listeners kolekcji, zobacz klasę TraceListenerCollection .
Następnie, jeśli TraceLevel ustawiono Verbose
wartość , przykład generuje komunikat 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, 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
Uwagi
Domyślnie dane wyjściowe są zapisywane w wystąpieniu klasy DefaultTraceListener.
Ta metoda wywołuje metodę Write odbiornika śledzenia.
Uwagi dotyczące dziedziczenia
Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then
instrukcji zamiast instrukcji using WriteIf(Boolean, String) . Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy podczas śledzenia jest wyłączony, ponieważ jeśli mySwitch.TraceError
oceniasz false
, że nie wywołujesz metody Write(String). Drugi przykład zawsze wywołuje metodę WriteIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError
false
nie są generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.
Pierwszy przykład
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Drugi przykład
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Zobacz też
Dotyczy
WriteIf(Boolean, String)
- Źródło:
- Trace.cs
- Źródło:
- Trace.cs
- Źródło:
- Trace.cs
Zapisuje komunikat do odbiorników śledzenia w kolekcji, Listeners jeśli warunek to 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)
Parametry
- condition
- Boolean
true
w celu spowodowania zapisania 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 ustawiony 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 generuje 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ę Write odbiornika śledzenia.
Uwagi dotyczące dziedziczenia
Można zminimalizować kary wydajności instrumentowania aplikacji przy użyciu If...Then
instrukcji zamiast instrukcji using WriteIf(Boolean, String) . Poniższe dwa przykłady kodu wysyłają ten sam komunikat debugowania. Jednak pierwszy przykład jest znacznie szybszy podczas śledzenia jest wyłączony, ponieważ jeśli mySwitch.TraceError
oceniasz false
, że nie wywołujesz metody Write(String). Drugi przykład zawsze wywołuje metodę WriteIf(Boolean, String), nawet wtedy, gdy mySwitch.TraceError
false
nie są generowane żadne dane wyjściowe śledzenia. Może to spowodować niepotrzebne wykonanie dowolnie złożonego kodu.
Pierwszy przykład
if(mySwitch.TraceError)
Trace.Write("aNumber = " + aNumber + " out of range");
Drugi przykład
Trace.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Zobacz też
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla