Delen via


Procedure: Traceringsinstructies toevoegen aan toepassingscode

Notitie

Dit artikel is specifiek voor .NET Framework. Dit geldt niet voor nieuwere implementaties van .NET, waaronder .NET 6 en nieuwere versies.

De methoden die het vaakst worden gebruikt voor tracering zijn de methoden voor het schrijven van uitvoer naar listeners: Schrijven, WriteIf, WriteLineIf, Assert en Fail. Deze methoden kunnen worden onderverdeeld in twee categorieën: Schrijven, SchrijvenLine en Fail verzenden allemaal voorwaardelijke uitvoer, terwijl WriteIf, WriteLineIf en Assert een Booleaanse voorwaarde testen en schrijven of niet schrijven op basis van de waarde van de voorwaarde. WriteIf en WriteLineIf verzenden uitvoer als de voorwaarde is true, en Assert verzendt uitvoer als de voorwaarde is false.

Bij het ontwerpen van de strategie voor tracering en foutopsporing moet u nadenken over de manier waarop de uitvoer eruit moet zien. Meerdere schrijfinstructies die zijn gevuld met niet-gerelateerde informatie, maken een logboek dat moeilijk te lezen is. Aan de andere kant, als u WriteLine gebruikt om gerelateerde instructies op afzonderlijke regels te plaatsen, kan het lastig zijn om te onderscheiden welke gegevens bij elkaar horen. Gebruik in het algemeen meerdere schrijfinstructies wanneer u informatie uit meerdere bronnen wilt combineren om één informatief bericht te maken en gebruik de instructie WriteLine als u één volledig bericht wilt maken.

Een volledige regel schrijven

  1. Roep de WriteLine of WriteLineIf methode aan.

    Een regelterugloop wordt toegevoegd aan het einde van het bericht dat deze methode retourneert, zodat het volgende bericht dat wordt geretourneerd door Write, WriteIf, WriteLine of WriteLineIf op de volgende regel begint:

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

Een gedeeltelijke regel schrijven

  1. Roep de Write of WriteIf methode aan.

    Het volgende bericht dat wordt weergegeven door een Write,WriteIf, WriteLine of WriteLineIf, begint op dezelfde regel als het bericht dat door de instructie Write of WriteIf wordt weergegeven:

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

Controleren of bepaalde voorwaarden bestaan vóór of nadat u een methode hebt uitgevoerd

  1. Roep de Assert methode aan.

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

    Notitie

    U kunt Assert gebruiken met zowel tracering als foutopsporing. In dit voorbeeld wordt de aanroepstack uitgevoerd naar een listener in de verzameling Listeners . Zie Asserties in Beheerde code en Debug.Assertvoor meer informatie.

Zie ook