Trace.WriteIf Método

Definição

Grava informações sobre o rastreamento nos ouvintes de rastreamento da coleção Listeners se uma condição for true.

Sobrecargas

WriteIf(Boolean, String, String)

Grava um nome e a mensagem da categoria nos ouvintes de rastreamento da coleção Listeners se uma condição for true.

WriteIf(Boolean, Object, String)

Grava um nome de categoria e o valor do método ToString() do objeto nos ouvintes de rastreamento da coleção Listeners se uma condição for true.

WriteIf(Boolean, Object)

Grava o valor do método ToString() do objeto nos ouvintes de rastreamento da coleção Listeners se uma condição for true.

WriteIf(Boolean, String)

Grava uma mensagem para os ouvintes de rastreamento na coleção Listeners se uma condição for true.

WriteIf(Boolean, String, String)

Origem:
Trace.cs
Origem:
Trace.cs
Origem:
Trace.cs

Grava um nome e a mensagem da categoria nos ouvintes de rastreamento da coleção Listeners se uma condição for 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)

Parâmetros

condition
Boolean

true para fazer com que uma mensagem seja gravada; caso contrário, false.

message
String

Uma mensagem a ser gravada.

category
String

Um nome de categoria usado para organizar a saída.

Atributos

Exemplos

O exemplo a seguir cria um TraceSwitch chamado generalSwitch. Essa opção é definida fora do exemplo de código.

Se a opção for definida como , TraceLevelVerboseo exemplo gerará a primeira mensagem de erro para o Listeners. Para obter informações sobre como adicionar um ouvinte à Listeners coleção, consulte a TraceListenerCollection classe .

Em seguida, se o TraceLevel estiver definido como Error ou superior, o exemplo gerará a segunda mensagem de erro na mesma linha que a primeira mensagem. A segunda mensagem é seguida por um terminador de linha.

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

Comentários

Por padrão, a saída é gravada em uma instância do DefaultTraceListener.

O category parâmetro pode ser usado para agrupar mensagens de saída.

Esse método chama o Write método do ouvinte de rastreamento.

Notas aos Herdeiros

Você pode minimizar a penalidade de desempenho de instrumentar seu aplicativo usando If...Then instruções em vez de usar WriteIf(Boolean, String) instruções. Os dois exemplos de código a seguir enviam a mesma mensagem de depuração. No entanto, o primeiro exemplo é muito mais rápido quando o rastreamento está desativado, porque se mySwitch.TraceError for avaliado como false você não chamará Write(String). O segundo exemplo sempre chama WriteIf(Boolean, String), mesmo quando mySwitch.TraceError é false e nenhuma saída de rastreamento é produzida. Isso pode resultar em execução desnecessária de código arbitrariamente complexo.

Primeiro exemplo

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

Segundo exemplo

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

Confira também

Aplica-se a

WriteIf(Boolean, Object, String)

Origem:
Trace.cs
Origem:
Trace.cs
Origem:
Trace.cs

Grava um nome de categoria e o valor do método ToString() do objeto nos ouvintes de rastreamento da coleção Listeners se uma condição for 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)

Parâmetros

condition
Boolean

true para fazer com que uma mensagem seja gravada; caso contrário, false.

value
Object

Um Listeners cujo nome é enviado para o Object.

category
String

Um nome de categoria usado para organizar a saída.

Atributos

Exemplos

O exemplo a seguir cria um TraceSwitch chamado generalSwitch. Essa opção é definida fora do exemplo de código.

Se a opção for definida como , TraceLevelVerboseo exemplo gerará o nome do myObject e o category para o Listeners. Para obter informações sobre como adicionar um ouvinte à Listeners coleção, consulte a TraceListenerCollection classe .

Em seguida, se o TraceLevel estiver definido como Error ou superior, o exemplo gerará a segunda mensagem de erro na mesma linha que a primeira mensagem. A segunda mensagem é seguida por um terminador de linha.

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

Comentários

Por padrão, a saída é gravada em uma instância do DefaultTraceListener.

O category parâmetro pode ser usado para agrupar mensagens de saída.

Esse método chama o Write método do ouvinte de rastreamento.

Notas aos Herdeiros

Você pode minimizar a penalidade de desempenho de instrumentar seu aplicativo usando If...Then instruções em vez de usar WriteIf(Boolean, String) instruções. Os dois exemplos de código a seguir enviam a mesma mensagem de depuração. No entanto, o primeiro exemplo é muito mais rápido quando o rastreamento está desativado, porque se mySwitch.TraceError for avaliado como false você não chamará Write(String). O segundo exemplo sempre chama WriteIf(Boolean, String), mesmo quando mySwitch.TraceError é false e nenhuma saída de rastreamento é produzida. Isso pode resultar em execução desnecessária de código arbitrariamente complexo.

Primeiro exemplo

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

Segundo exemplo

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

Confira também

Aplica-se a

WriteIf(Boolean, Object)

Origem:
Trace.cs
Origem:
Trace.cs
Origem:
Trace.cs

Grava o valor do método ToString() do objeto nos ouvintes de rastreamento da coleção Listeners se uma condição for 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)

Parâmetros

condition
Boolean

true para fazer com que uma mensagem seja gravada; caso contrário, false.

value
Object

Um Listeners cujo nome é enviado para o Object.

Atributos

Exemplos

O exemplo a seguir cria um TraceSwitch chamado generalSwitch. Essa opção é definida fora do exemplo de código.

Se a opção for definida como ou TraceLevelError superior, o exemplo gerará o primeiro nome do parâmetro value para o Listeners. Para obter informações sobre como adicionar um ouvinte à Listeners coleção, consulte a TraceListenerCollection classe .

Em seguida, se o TraceLevel estiver definido como Verbose, o exemplo gerará uma mensagem na mesma linha que a primeira mensagem. A segunda mensagem é seguida por um terminador de linha.

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

Comentários

Por padrão, a saída é gravada em uma instância do DefaultTraceListener.

Esse método chama o Write método do ouvinte de rastreamento.

Notas aos Herdeiros

Você pode minimizar a penalidade de desempenho de instrumentar seu aplicativo usando If...Then instruções em vez de usar WriteIf(Boolean, String) instruções. Os dois exemplos de código a seguir enviam a mesma mensagem de depuração. No entanto, o primeiro exemplo é muito mais rápido quando o rastreamento está desativado, porque se mySwitch.TraceError for avaliado como false você não chamará Write(String). O segundo exemplo sempre chama WriteIf(Boolean, String), mesmo quando mySwitch.TraceError é false e nenhuma saída de rastreamento é produzida. Isso pode resultar em execução desnecessária de código arbitrariamente complexo.

Primeiro exemplo

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

Segundo exemplo

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

Confira também

Aplica-se a

WriteIf(Boolean, String)

Origem:
Trace.cs
Origem:
Trace.cs
Origem:
Trace.cs

Grava uma mensagem para os ouvintes de rastreamento na coleção Listeners se uma condição for 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)

Parâmetros

condition
Boolean

true para fazer com que uma mensagem seja gravada; caso contrário, false.

message
String

Uma mensagem a ser gravada.

Atributos

Exemplos

O exemplo a seguir cria um TraceSwitch chamado generalSwitch. Essa opção é definida fora do exemplo de código.

Se a opção for definida como ou TraceLevelError superior, o exemplo gerará a primeira mensagem de erro para o Listeners. Para obter informações sobre como adicionar um ouvinte à Listeners coleção, consulte a TraceListenerCollection classe .

Em seguida, se o TraceLevel estiver definido como Verbose, o exemplo gerará a segunda mensagem de erro na mesma linha que a primeira mensagem. A segunda mensagem é seguida por um terminador de linha.

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

Comentários

Por padrão, a saída é gravada em uma instância do DefaultTraceListener.

Esse método chama o Write método do ouvinte de rastreamento.

Notas aos Herdeiros

Você pode minimizar a penalidade de desempenho de instrumentar seu aplicativo usando If...Then instruções em vez de usar WriteIf(Boolean, String) instruções. Os dois exemplos de código a seguir enviam a mesma mensagem de depuração. No entanto, o primeiro exemplo é muito mais rápido quando o rastreamento está desativado, porque se mySwitch.TraceError for avaliado como false você não chamará Write(String). O segundo exemplo sempre chama WriteIf(Boolean, String), mesmo quando mySwitch.TraceError é false e nenhuma saída de rastreamento é produzida. Isso pode resultar em execução desnecessária de código arbitrariamente complexo.

Primeiro exemplo

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

Segundo exemplo

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

Confira também

Aplica-se a