Debug.WriteLineIf Metodo

Definizione

Scrive le informazioni sul debug nei listener di traccia dell'insieme Listeners se una condizione è true.

Overload

WriteLineIf(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 è true.

WriteLineIf(Boolean, Debug+WriteIfInterpolatedStringHandler)

Scrive un messaggio nei listener di traccia nella Listeners raccolta se una condizione specificata è true.

WriteLineIf(Boolean, Object)

Scrive il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è true.

WriteLineIf(Boolean, String)

Scrive un messaggio ai listener di traccia della raccolta Listeners se una condizione è true.

WriteLineIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String)

Scrive un nome di categoria e un messaggio nei listener di traccia nella Listeners raccolta se una condizione specificata è true.

WriteLineIf(Boolean, String, String)

Scrive un nome di categoria e un messaggio nei listener di traccia della raccolta Listeners se una condizione è true.

WriteLineIf(Boolean, Object, String)

Source:
Debug.cs
Source:
Debug.cs
Source:
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 WriteLineIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, object value, string category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, object? value, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteLineIf : bool * obj * string -> unit
Public Shared Sub WriteLineIf (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.

value
Object

Oggetto il cui nome viene inviato ai Listeners.

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 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( Object^ myObject, String^ category )
   {
      // Write the message if the TraceSwitch level is set to Error or higher.
      #if defined(DEBUG)
      Debug::WriteIf(generalSwitch->TraceError, "Invalid object for category. ");
      
      // Write a second message if the TraceSwitch level is set to Verbose.
      Debug::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.
    Debug.WriteIf(generalSwitch.TraceError, "Invalid object for category. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Debug.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.
    Debug.WriteIf(generalSwitch.TraceError, "Invalid object for category. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Debug.WriteLineIf(generalSwitch.TraceVerbose, myObject, 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 WriteLine 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 WriteLineIf(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 WriteLine(String). Il secondo esempio chiama WriteLineIf(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.WriteLine("aNumber = " + aNumber + " out of range");

Secondo esempio:

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

Vedi anche

Si applica a

WriteLineIf(Boolean, Debug+WriteIfInterpolatedStringHandler)

Source:
Debug.cs
Source:
Debug.cs
Source:
Debug.cs

Scrive un messaggio nei listener di traccia nella Listeners raccolta se una condizione specificata è true.

public:
 static void WriteLineIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteLineIf : bool * WriteIfInterpolatedStringHandler -> unit
Public Shared Sub WriteLineIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler)

Parametri

condition
Boolean

Espressione condizionale da valutare. Se la condizione è true, il messaggio viene scritto nei listener di traccia nell'insieme.

message
Debug.WriteIfInterpolatedStringHandler

Messaggio da inserire.

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.

Questo metodo chiama il TraceListener.WriteLine metodo del listener di traccia.

Vedi anche

Si applica a

WriteLineIf(Boolean, Object)

Source:
Debug.cs
Source:
Debug.cs
Source:
Debug.cs

Scrive il valore del metodo ToString() dell'oggetto nei listener di traccia nella raccolta Listeners se una condizione è true.

public:
 static void WriteLineIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, object value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, object? value);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteLineIf : bool * obj -> unit
Public Shared Sub WriteLineIf (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.

value
Object

Oggetto il cui nome viene inviato ai Listeners.

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 nome dell'oggetto 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, "Invalid object. " );
      
      // Write a second message if the TraceSwitch level is set to Verbose.
      Debug::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.
    Debug.WriteIf(generalSwitch.TraceError, "Invalid object. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Debug.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.
    Debug.WriteIf(generalSwitch.TraceError, "Invalid object. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Debug.WriteLineIf(generalSwitch.TraceVerbose, myObject)
End Sub

Commenti

Per impostazione predefinita, l'output viene scritto in un'istanza di DefaultTraceListener.

Questo metodo chiama il WriteLine 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 WriteLineIf(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 WriteLine(String). Il secondo esempio chiama WriteLineIf(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.WriteLine("aNumber = " + aNumber + " out of range");

Secondo esempio:

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

Vedi anche

Si applica a

WriteLineIf(Boolean, String)

Source:
Debug.cs
Source:
Debug.cs
Source:
Debug.cs

Scrive un messaggio ai listener di traccia della raccolta Listeners se una condizione è true.

public:
 static void WriteLineIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, string message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, string? message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteLineIf : bool * string -> unit
Public Shared Sub WriteLineIf (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 inserire.

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::WriteLineIf( 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.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.
    Debug.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Debug.WriteLineIf(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 TraceListener.WriteLine 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 WriteLineIf(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 WriteLine(String). Il secondo esempio chiama WriteLineIf(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.WriteLine("aNumber = " + aNumber + " out of range");

Secondo esempio:

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

Vedi anche

Si applica a

WriteLineIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String)

Source:
Debug.cs
Source:
Debug.cs
Source:
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 WriteLineIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteLineIf (bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteLineIf : bool * WriteIfInterpolatedStringHandler * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler, category As String)

Parametri

condition
Boolean

Espressione condizionale da valutare. Se la condizione è true, il nome del messaggio e della categoria vengono scritti nei listener di traccia nella raccolta.

message
Debug.WriteIfInterpolatedStringHandler

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.

Il category parametro può essere usato per raggruppare i messaggi di output.

Questo metodo chiama il TraceListener.WriteLine metodo del listener di traccia.

Vedi anche

Si applica a

WriteLineIf(Boolean, String, String)

Source:
Debug.cs
Source:
Debug.cs
Source:
Debug.cs

Scrive un nome di categoria e un messaggio nei listener di traccia della raccolta Listeners se una condizione è true.

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

Parametri

condition
Boolean

Espressione condizionale da valutare. Se la condizione è true, il messaggio e il nome cateogry vengono scritti nei listener di traccia nell'insieme.

message
String

Messaggio da inserire.

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 TraceLevelError o superiore, nell'esempio viene restituito il primo messaggio di errore a Listeners. Per informazioni sull'aggiunta Listeners di un listener alla raccolta, vedere la TraceListenerCollection classe .

Se l'oggetto è impostato su Verbose, l'esempio TraceLevel restituisce il secondo messaggio di errore e la category 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( String^ category )
   {
      // 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::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.
    Debug.WriteIf(generalSwitch.TraceError, "My error message. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Debug.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.
    Debug.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Debug.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.", 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.WriteLine 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 WriteLineIf(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 WriteLine(String). Il secondo esempio chiama WriteLineIf(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.WriteLine("aNumber = " + aNumber + " out of range");

Secondo esempio:

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

Vedi anche

Si applica a