Procedura: aggiungere istruzioni di traccia al codice dell'applicazione

I metodi usati più spesso per la traccia sono i metodi per la scrittura dell'output nei listener: Write, WriteIf, WriteLine, WriteLineIf, Assert e Fail. Questi metodi possono essere divisi in due categorie: Write, WriteLine e Fail generano tutti output in modo non condizionale, mentre WriteIf, WriteLineIf e Assert verificano una condizione booleana e scrivono o non scrivono il valore della condizione. WriteIf e WriteLineIf generano output se la condizione è true e Assert genera output se la condizione è false.

Quando si progetta la traccia e si esegue il debug strategia, è necessario considerare come si desidera visualizzare l'output. Più istruzioni Write costituite da informazioni non correlate creeranno un log che è difficile da leggere. D'altra parte, usando WriteLine per inserire istruzioni correlate in righe separate, potrebbe essere difficile distinguere quali informazioni sono correlate. In generale, usare più istruzioni Write quando si vogliono combinare informazioni provenienti da più origini per creare un singolo messaggio informativo e usare l’istruzione WriteLine quando si intende creare un unico messaggio completo.

Per scrivere una riga completa

  1. Chiamare il metodo WriteLine o WriteLineIf.

    Un ritorno a capo viene aggiunto alla fine del messaggio restituito da questo metodo, quindi il messaggio successivo restituito da Write, WriteIf, WriteLine o WriteLineIf inizierà nella riga seguente:

    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.");  
    

Per scrivere una riga parzialmente eseguita

  1. Chiamare il metodo Write o WriteIf.

    Il messaggio successivo di Write, WriteIf, WriteLine o WriteLineIf inizierà sulla stessa riga del messaggio dell’istruzione 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");  
    

Per verificare che determinate condizioni esistano prima o dopo l'esecuzione di un metodo

  1. Chiamare il metodo 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

    È possibile usare Assert con operazioni di traccia e debug. In questo esempio viene restituito lo stack di chiamate nella raccolta Listeners. Per altre informazioni, vedere Asserzioni nel codice gestito e Debug.Assert.

Vedi anche