Procedimiento para agregar instrucciones de seguimiento al código de una aplicación

Los métodos que se usan con mayor frecuencia para seguimiento son los métodos para escribir los resultados en agentes de escucha: Write, WriteIf, WriteLine, WriteLineIf, Assert y Fail. Estos métodos se pueden dividir en dos categorías: Write, WriteLine y Fail emiten resultados de forma incondicional, mientras que WriteIf, WriteLineIf y Assert prueban una condición booleana y escriben o no escriben en función del valor de la condición. WriteIf y WriteLineIf emiten resultados si la condición es true y Assert emite resultados si la condición es false.

Al diseñar la estrategia de depuración y traza, debe pensar cómo desea presentar los resultados. Varias instrucciones Write con información no relacionada crearán un registro difícil de leer. Por otro lado, usar WriteLine para colocar instrucciones relacionadas en líneas independientes puede hacer que sea difícil distinguir la información del mismo tipo. En general, use varias instrucciones Write cuando quiera combinar información de varios orígenes para crear un único mensaje informativo y use la instrucción WriteLine cuando quiera crear un único mensaje completo.

Para escribir una línea completa

  1. Llame al método WriteLine o WriteLineIf.

    Se agrega un retorno de carro al final del mensaje que devuelve este método, para que el siguiente mensaje devuelto por Write, WriteIf, WriteLine o WriteLineIf comience en la línea siguiente:

    Dim errorFlag As Boolean = False  
    Trace.WriteLine("Error in AppendData procedure.")  
    Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.")  
    
    bool errorFlag = false;  
    System.Diagnostics.Trace.WriteLine ("Error in AppendData procedure.");  
    System.Diagnostics.Trace.WriteLineIf(errorFlag,
       "Error in AppendData procedure.");  
    

Para escribir una línea parcial

  1. Llame al método Write o WriteIf.

    El siguiente mensaje generado por Write, WriteIf, WriteLine o WriteLineIf empezará en la misma línea que el mensaje generado por la instrucción Write o WriteIf:

    Dim errorFlag As Boolean = False  
    Trace.WriteIf(errorFlag, "Error in AppendData procedure.")  
    Debug.WriteIf(errorFlag, "Transaction abandoned.")  
    Trace.Write("Invalid value for data request")  
    
    bool errorFlag = false;  
    System.Diagnostics.Trace.WriteIf(errorFlag,
       "Error in AppendData procedure.");  
    System.Diagnostics.Debug.WriteIf(errorFlag, "Transaction abandoned.");  
    Trace.Write("Invalid value for data request");  
    

Para comprobar que se cumplen ciertas condiciones antes o después de ejecutar un método

  1. Llame al método Assert.

    Dim i As Integer = 4  
    Trace.Assert(i = 5, "i is not equal to 5.")  
    
    int i = 4;  
    System.Diagnostics.Trace.Assert(i == 5, "i is not equal to 5.");  
    

    Nota

    Puede usar Assert con la depuración y el seguimiento. En este ejemplo se envía la pila de llamadas a cualquier agente de escucha de la colección Listeners. Para más información, vea Aserciones en el código administrado y Debug.Assert.

Consulte también