Enregistrement du traçage vers la sortie de page
Le traçage au niveau de la page vous permet d'écrire des instructions de débogage directement sur une sortie de page et d'exécuter le code de débogage de manière conditionnelle lorsque le traçage est activé. Pour activer le traçage d'une page, ajoutez la directive suivante au début du code de la page :
Les instructions de traçage peuvent également être organisées par catégorie, à l'aide de l'attribut TraceMode de la directive Page. Si aucun attribut TraceMode n'est défini, la valeur par défaut est SortByTime.
<%@ Page Trace="true" TraceMode= "SortByCategory" %>
L'exemple suivant illustre la sortie par défaut lorsque le traçage au niveau de la page est activé. Notez que ASP.NET insère des informations de temporisation pour les emplacements importants dans le cycle de vie d'exécution de la page :
La page expose une propriété Trace (de type TraceContext), qui peut être utilisée pour sortir des instructions de débogage sur la sortie de la page, si le traçage est activé. À l'aide de TraceContext, vous pouvez écrire des instructions de débogage en utilisant les méthodes Trace.Write et Trace.Warn, qui prennent chacune une chaîne de message ou une catégorie et une chaîne de message. Les instructions Trace.Warn sont identiques aux instructions Trace.Write, mais elles s'affichent en rouge.
// Trace(Message)
Trace.Write("Begging User Code...");
...
Trace.Warn("Array count is null!");
// Trace(Category, Message)
Trace.Write("Custom Trace","Beginning User Code...");
...
Trace.Warn("Custom Trace","Array count is null!");
' Trace(Message)
Trace.Write("Begging User Code...")
...
Trace.Warn("Array count is Nothing!")
' Trace(Category, Message)
Trace.Write("Custom Trace","Beginning User Code...")
...
Trace.Warn("Custom Trace","Array count is null!")
// Trace(Message)
Trace.Write("Begging User Code...");
...
Trace.Warn("Array count is null!");
// Trace(Category, Message)
Trace.Write("Custom Trace","Beginning User Code...");
...
Trace.Warn("Custom Trace","Array count is null!");
|
|
C#
|
VB
|
JScript
|
|
Si le traçage est désactivé (c'est-à-dire si Trace="false" sur la directive Page, ou si cette instruction est absente), ces instructions ne s'exécutent pas et aucune sortie de traçage ne s'affiche dans le navigateur client. Cela permet de conserver les instructions de débogage dans le code de production et de les activer de manière conditionnelle ultérieurement.
Il arrive fréquemment que vous deviez exécuter du code supplémentaire pour créer les instructions à passer aux méthodes Trace.Write ou Trace.Warn, où ce code ne doit s'exécuter que si le traçage est activé pour la page. Pour prendre en charge cette opération, Page expose une propriété Boolean, Trace.IsEnabled, qui ne retourne la valeur true que si le traçage est activé pour la page. Vous devez activer d'abord cette propriété pour garantir que votre code de débogage ne peut s'exécuter que si le traçage est activé.
if (Trace.IsEnabled) {
for (int i=0; i<ds.Tables["Categories"] .Rows.Count; i++) {
Trace.Write("ProductCategory",ds .Tables["Categories"].Rows[i][0].ToString());
}
}
If Trace.IsEnabled Then
For i=0 To ds.Tables("Categories") .Rows.Count-1
Trace.Write("ProductCategory",ds. Tables("Categories").Rows(i)(0).ToString())
Next
End if
if (Trace.IsEnabled) {
for (var i:int =0; i<ds.Tables["Categories"] .Rows.Count; i++) {
Trace.Write("ProductCategory",ds. Tables["Categories"].Rows[i][0].ToString());
}
}
|
|
C#
|
VB
|
JScript
|
|
L'exemple suivant illustre l'utilisation de Trace.Write et de Trace.Warn pour sortir des instructions de débogage. Remarquez également l'utilisation de la propriété Trace.IsEnabled pour exécuter de manière conditionnelle du code de débogage supplémentaire. Dans cet exemple, les informations de traçage ont été triées par catégorie.
ASP.NET fournit également un moyen d'activer le traçage pour la totalité de l'application, plutôt que pour une page unique.
Résumé de la section
- Pour activer le traçage au niveau de la page, utilisez un attribut Trace="true" dans la directive Page de niveau supérieur.
- Le traçage au niveau de la page vous permet d'écrire des instructions de débogage en tant que composants de la sortie cliente d'une page. Les instructions de traçage sont sorties à l'aide des méthodes Trace.Write et Trace.Warn, en passant une catégorie et un message pour chaque instruction.
- Le débogage du code peut s'exécuter de manière conditionnelle, selon que le traçage est activé ou non pour la page. Utilisez la propriété Trace.IsEnabled de la page pour déterminer si le traçage est activé.
|