Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Trace::WriteIf (Método) (Boolean, Object)

Escribe el valor del método ToString del objeto en los agentes de escucha de seguimiento de la colección Listeners si una condición es true.

Espacio de nombres:  System.Diagnostics
Ensamblado:  System (en System.dll)

[ConditionalAttribute(L"TRACE")]
public:
static void WriteIf(
	bool condition, 
	Object^ value
)

Parámetros

condition
Tipo: System::Boolean
true para que se escriba un mensaje; en caso contrario, false.
value
Tipo: System::Object
Object cuyo nombre se envía a la propiedad Listeners.

El resultado se escribe de forma predeterminada en una instancia de DefaultTraceListener.

Este método llama al método Write del agente de escucha de seguimiento.

Notas para los implementadores

Para minimizar la disminución del rendimiento al instrumentar la aplicación, utilice instrucciones If...Then en lugar de instrucciones WriteIf. Los dos ejemplos de código siguientes envían el mismo mensaje de depuración. Sin embargo, el primer ejemplo resulta mucho más rápido con la traza desactivada, porque si mySwitch.TraceError se evalúa como false, no se llamará a Write. En el segundo ejemplo siempre se llama a WriteIf, aunque mySwitch.TraceError sea false y no se genere ningún resultado de traza. Esto puede resultar en la ejecución innecesaria de código arbitrariamente complejo.

Primer ejemplo

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

Segundo ejemplo

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

En el siguiente ejemplo se crea un TraceSwitch denominado generalSwitch. Este modificador se establece fuera de la muestra de código.

Si el modificador está establecido en TraceLevelError o superior, el ejemplo genera el primer nombre del parámetro de valor en la colección de Listeners. Para obtener información sobre cómo agregar un agente de escucha a la colección Listeners, vea la clase TraceListenerCollection.

A continuación, si la enumeración TraceLevel está establecida en Verbose, el ejemplo genera un mensaje en la misma línea que el primer mensaje. El segundo mensaje va seguido de un terminador de línea.


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


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft