Die Verwendung von Tracing ist eine einfache und leichte Möglichkeit einem Fehler auf den Grund zu gehen oder einfach nur bestimmte Ereignisse und Vorgänge per Nachricht auszugeben. In der Code-Beside Datei einer ASP.NET Seite ist dies, je nach verwendeter Programmiersprache, einfach. Wird C# verwendet kann über die Klasse Trace und die Methode Write eine Nachricht ausgegeben werden.
In vielen Web Anwendungen wird jedoch JavaScript, häufig in Verbindung mit AJAX genutzt. Das ASP.NET AJAX Framework bietet allerdings auch eine Möglichkeit an Tracing zu verwenden.
Über die Funktion Sys.Debug.trace() kann eine einfache Meldung ausgegeben werden.
<script language="javascript" type="text/javascript"> function TraceMessage() { Sys.Debug.trace("Tracing is working"); } </script>
Ist das Script-Debugging im Internet Explorer aktiviert und die Anwendung per Visual Studio ausgeführt, wird die Meldung im Visual Studio Output Window ausgegeben.
Eine weitere Möglich besteht in der Ausgabe in eine Textarea. Hier muss auf der Seite eine Textarea mit der ID TraceConsole eingefügt werden. Anschließend werden die Meldungen auch hier ausgegeben.
<textarea id="TraceConsole" cols="20" rows="20"></textarea>
Wird kann der Firefox Browser verwendet, können die Meldungen mit Hilfe des FireBug Add-Ons ebenfalls ausgegeben werden. Hierzu ist es nötig die Konsole für den localhost zu aktivieren.
Dem dem sehr einfachen Ausgeben von Nachrichten bietet das AJAX Framework noch weit umfangreichere Möglichkeiten, um Fehler zu finden, oder das Verhalten der Anwendung zu beobachten. In der MSDN finden sich dazu mehrere Artikel und Beschreibungen:
Debugging and Tracing AJAX Applications Overview
Die Beispielanwendung kann hier runtergeladen werden.
Hallo Kai,
das ist wirklich mal ein cooler Weg Fehler auszugeben.
Du hast aber auch einen kleinen Schreibfehler in einem Text:
“Wird kann der Firefox Browser verwendet”
Da ist ein kann zu viel :)
Ansonsten sehr cool.
Kann man bestimmt ab und an mal gebrauchen.
Somit muss man nicht per Response.Write arbeiten.
Wieder mal ein genialer Eintrag in deinem Blog.
Ansonsten wünsche ich noch einen schönen Abend.
Martin