Debug.WriteIf Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Scrive le informazioni sul debug nei listener di traccia dell'insieme Listeners se una condizione è true
.
Overload
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler) |
Se |
WriteIf(Boolean, Object) |
Scrive il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è |
WriteIf(Boolean, String) |
Scrive un messaggio ai listener di traccia della raccolta Listeners se una condizione è |
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String) |
Scrive un nome di categoria e un messaggio nei listener di traccia nella Listeners raccolta se una condizione specificata è |
WriteIf(Boolean, Object, String) |
Scrive un nome di categoria e il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è |
WriteIf(Boolean, String, String) |
Scrive un nome di categoria e un messaggio nei listener di traccia della raccolta Listeners se una condizione è |
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Se condition
è true
, scrive un nome di categoria e un messaggio nei listener di traccia nella Listeners raccolta.
public:
static void WriteIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * WriteIfInterpolatedStringHandler -> unit
Public Shared Sub WriteIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il valore viene scritto nei listener di traccia nell'insieme.
Messaggio da scrivere se condition
è true
.
- Attributi
Commenti
Questo overload è stato introdotto in .NET 6 per migliorare le prestazioni. Rispetto agli overload che accettano un String
parametro, questo overload valuta solo gli elementi di formattazione delle stringhe interpolati se il messaggio è obbligatorio.
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Usare il category
parametro per raggruppare i messaggi di output.
Questo metodo chiama il Write metodo del listener di traccia.
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
WriteIf(Boolean, Object)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Scrive il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è true
.
public:
static void WriteIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, object value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, object? value);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * obj -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il valore viene scritto nei listener di traccia nell'insieme.
- Attributi
Esempio
Nell'esempio seguente viene creato un TraceSwitch oggetto denominato generalSwitch
. Questa opzione viene impostata all'esterno dell'esempio di codice.
Se l'opzione è impostata su TraceLevelError
o versione successiva, nell'esempio viene restituito il nome del parametro value all'oggetto Listeners. Per informazioni sull'aggiunta di un listener alla Listeners raccolta, vedere la TraceListenerCollection classe .
Quindi, se è TraceLevel impostato su Verbose
, l'esempio restituisce un messaggio nella stessa riga del primo messaggio. Un terminatore di riga segue il secondo messaggio.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch^ generalSwitch =
gcnew TraceSwitch( "General","Entire Application" );
public:
static void MyErrorMethod( Object^ myObject )
{
// Write the message if the TraceSwitch level is set to Error or higher.
#if defined(DEBUG)
Debug::WriteIf( generalSwitch->TraceError, myObject );
// Write a second message if the TraceSwitch level is set to Verbose.
Debug::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.
Debug.WriteIf(generalSwitch.TraceError, myObject);
// Write a second message if the TraceSwitch level is set to Verbose.
Debug.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.
Debug.WriteIf(generalSwitch.TraceError, myObject)
' Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteLineIf(generalSwitch.TraceVerbose, " is not a valid value for this method.")
End Sub
Commenti
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Questo metodo chiama il Write metodo del listener di traccia.
Note per gli eredi
È possibile ridurre al minimo la riduzione delle prestazioni della strumentazione dell'applicazione usando If...Then
istruzioni anziché istruzioni using WriteIf(Boolean, String) . I due esempi di codice seguenti inviano lo stesso messaggio di debug. Tuttavia, il primo esempio è molto più veloce quando la traccia è disattivata, perché se mySwitch.TraceError
restituisce false
, non si chiama Write(String). Il secondo esempio chiama WriteIf(Boolean, String)sempre , anche quando mySwitch.TraceError
è false
e non viene generato alcun output di traccia. Ciò può comportare l'esecuzione non necessaria di codice arbitrariamente complesso.
Primo esempio:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Secondo esempio:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
WriteIf(Boolean, String)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Scrive un messaggio ai listener di traccia della raccolta Listeners se una condizione è true
.
public:
static void WriteIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, string message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, string? message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * string -> unit
Public Shared Sub WriteIf (condition As Boolean, message As String)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il messaggio viene scritto nei listener di traccia nell'insieme.
- message
- String
Messaggio da scrivere.
- Attributi
Esempio
Nell'esempio seguente viene creato un TraceSwitch oggetto denominato generalSwitch
. Questa opzione viene impostata all'esterno dell'esempio di codice.
Se l'opzione è impostata su TraceLevelError
o versione successiva, nell'esempio viene restituito il primo messaggio di errore a Listeners. Per informazioni sull'aggiunta di un listener alla Listeners raccolta, vedere la TraceListenerCollection classe .
Quindi, se è TraceLevel impostato su Verbose
, l'esempio restituisce il secondo messaggio di errore nella stessa riga del primo messaggio. Un terminatore di riga segue il secondo messaggio.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch^ generalSwitch =
gcnew TraceSwitch( "General","Entire Application" );
public:
static void MyErrorMethod()
{
// Write the message if the TraceSwitch level is set to Error or higher.
#if defined(DEBUG)
Debug::WriteIf( generalSwitch->TraceError, "My error message. " );
// Write a second message if the TraceSwitch level is set to Verbose.
Debug::WriteIf( generalSwitch->TraceVerbose,
"My second error message." );
#endif
}
// Class-level declaration.
// Create a TraceSwitch.
TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");
static void MyErrorMethod()
{
// Write the message if the TraceSwitch level is set to Error or higher.
Debug.WriteIf(generalSwitch.TraceError, "My error message. ");
// Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(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.
Debug.WriteIf(generalSwitch.TraceError, "My error message. ")
' Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, "My second error message.")
End Sub
Commenti
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Questo metodo chiama il Write metodo del listener di traccia.
Note per gli eredi
È possibile ridurre al minimo la riduzione delle prestazioni della strumentazione dell'applicazione usando If...Then
istruzioni anziché istruzioni using WriteIf(Boolean, String) . I due esempi di codice seguenti inviano lo stesso messaggio di debug. Tuttavia, il primo esempio è molto più veloce quando la traccia è disattivata, perché se mySwitch.TraceError
restituisce false
, non si chiama Write(String). Il secondo esempio chiama WriteIf(Boolean, String)sempre , anche quando mySwitch.TraceError
è false
e non viene generato alcun output di traccia. Ciò può comportare l'esecuzione non necessaria di codice arbitrariamente complesso.
Primo esempio:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Secondo esempio:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Scrive un nome di categoria e un messaggio nei listener di traccia nella Listeners raccolta se una condizione specificata è true
.
public:
static void WriteIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * WriteIfInterpolatedStringHandler * string -> unit
Public Shared Sub WriteIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler, category As String)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il messaggio viene scritto nei listener di traccia nell'insieme.
Messaggio da inserire.
- category
- String
Nome di categoria usato per organizzare l'output.
- Attributi
Commenti
Questo overload è stato introdotto in .NET 6 per migliorare le prestazioni. Rispetto agli overload che accettano un String
parametro, questo overload valuta solo gli elementi di formattazione delle stringhe interpolati se il messaggio è obbligatorio.
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Usare il category
parametro per raggruppare i messaggi di output.
Questo metodo chiama il Write metodo del listener di traccia.
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
WriteIf(Boolean, Object, String)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Scrive un nome di categoria e il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è true
.
public:
static void WriteIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, object value, string category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, object? value, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * obj * string -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object, category As String)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il nome della categoria e il valore vengono scritti nei listener di traccia nell'insieme.
- category
- String
Nome di categoria usato per organizzare l'output.
- Attributi
Esempio
Nell'esempio seguente viene creato un TraceSwitch oggetto denominato generalSwitch
. Questa opzione viene impostata all'esterno dell'esempio di codice.
Se l'opzione è impostata su TraceLevelVerbose
, l'esempio restituisce il nome dell'oggetto myObject
e l'oggetto category
su Listeners. Per informazioni sull'aggiunta di un listener alla Listeners raccolta, vedere la TraceListenerCollection classe .
Quindi, se è TraceLevel impostato su Error
o superiore, nell'esempio viene restituito il secondo messaggio di errore nella stessa riga del primo messaggio. Un terminatore di riga segue il secondo messaggio.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch^ generalSwitch =
gcnew TraceSwitch( "General","Entire Application" );
public:
static void MyErrorMethod( Object^ myObject, String^ category )
{
// Write the message if the TraceSwitch level is set to Error or higher.
#if defined(DEBUG)
Debug::WriteIf( generalSwitch->TraceVerbose, myObject, category );
// Write a second message if the TraceSwitch level is set to Verbose.
Debug::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.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject, category);
// Write a second message if the TraceSwitch level is set to Error or higher.
Debug.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.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject, category)
' Write a second message if the TraceSwitch level is set to Error or higher.
Debug.WriteLineIf(generalSwitch.TraceError, " Object is not valid for this category.")
End Sub
Commenti
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Il category
parametro può essere usato per raggruppare i messaggi di output.
Questo metodo chiama il Write metodo del listener di traccia.
Note per gli eredi
È possibile ridurre al minimo la riduzione delle prestazioni della strumentazione dell'applicazione usando If...Then
istruzioni anziché istruzioni using WriteIf(Boolean, String) . I due esempi di codice seguenti inviano lo stesso messaggio di debug. Tuttavia, il primo esempio è molto più veloce quando la traccia è disattivata, perché se mySwitch.TraceError
restituisce false
, non si chiama Write(String). Il secondo esempio chiama WriteIf(Boolean, String)sempre , anche quando mySwitch.TraceError
è false
e non viene generato alcun output di traccia. Ciò può comportare l'esecuzione non necessaria di codice arbitrariamente complesso.
Primo esempio:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Secondo esempio:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
WriteIf(Boolean, String, String)
- Origine:
- Debug.cs
- Origine:
- Debug.cs
- Origine:
- Debug.cs
Scrive un nome di categoria e un messaggio nei listener di traccia della raccolta Listeners se una condizione è true
.
public:
static void WriteIf(bool condition, System::String ^ message, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, string message, string category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf (bool condition, string? message, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * string * string -> unit
Public Shared Sub WriteIf (condition As Boolean, message As String, category As String)
Parametri
- condition
- Boolean
Espressione condizionale da valutare. Se la condizione è true
, il nome della categoria e il messaggio vengono scritti nei listener di traccia nell'insieme.
- message
- String
Messaggio da scrivere.
- category
- String
Nome di categoria usato per organizzare l'output.
- Attributi
Esempio
Nell'esempio seguente viene creato un TraceSwitch oggetto denominato generalSwitch
. Questa opzione viene impostata all'esterno dell'esempio di codice.
Se l'opzione è impostata su TraceLevelVerbose
, nell'esempio viene restituito il primo messaggio di errore a Listeners. Per informazioni sull'aggiunta di un listener alla Listeners raccolta, vedere la TraceListenerCollection classe .
Quindi, se è TraceLevel impostato su Error
o superiore, nell'esempio viene restituito il secondo messaggio di errore nella stessa riga del primo messaggio. Un terminatore di riga segue il secondo messaggio.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch^ generalSwitch =
gcnew TraceSwitch( "General","Entire Application" );
public:
static void MyErrorMethod( Object^ myObject, String^ category )
{
// Write the message if the TraceSwitch level is set to Error or higher.
#if defined(DEBUG)
Debug::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 Verbose.
Debug::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.
Debug.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.
Debug.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.
Debug.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.
Debug.WriteLineIf(generalSwitch.TraceError, " Please use a different category.")
End Sub
Commenti
Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.
Il category
parametro può essere usato per raggruppare i messaggi di output.
Questo metodo chiama il TraceListener.Write metodo del listener di traccia.
Note per gli eredi
È possibile ridurre al minimo la riduzione delle prestazioni della strumentazione dell'applicazione usando If...Then
istruzioni anziché istruzioni using WriteIf(Boolean, String) . I due esempi di codice seguenti inviano lo stesso messaggio di debug. Tuttavia, il primo esempio è molto più veloce quando la traccia è disattivata, perché se mySwitch.TraceError
restituisce false
, non si chiama Write(String). Il secondo esempio chiama WriteIf(Boolean, String)sempre , anche quando mySwitch.TraceError
è false
e non viene generato alcun output di traccia. Ciò può comportare l'esecuzione non necessaria di codice arbitrariamente complesso.
Primo esempio:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Secondo esempio:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Vedi anche
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per