TraceContext.TraceFinished Event

 

Raised by the TraceContext object to expose trace messages after all request information is gathered.

Namespace:   System.Web
Assembly:  System.Web (in System.Web.dll)

public event TraceContextEventHandler TraceFinished

The TraceFinished event is raised during the EndRequest stage of HTTP request processing. It is raised by a TraceContext object after all request information is gathered, to expose the collection of TraceContextRecord messages to registered TraceContextEventHandler delegates.

The following code example demonstrates how you can register a TraceContextEventHandler to handle the TraceFinished event. In this example, the delegate iterates through the trace messages and writes them to the response stream; however, you could write the same information to a database or a profiling tool consumer.

<%@ Page language="c#" Trace="true" %>
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
    // Register a handler for the TraceFinished event.
    Trace.TraceFinished += new 
        TraceContextEventHandler(this.OnTraceFinished);

    // Write a trace message.
    Trace.Write("Web Forms Infrastructure Methods", "USERMESSAGE: Page_Load complete.");
}

// A TraceContextEventHandler for the TraceFinished event.
void OnTraceFinished(object sender, TraceContextEventArgs e)
{
    TraceContextRecord r = null;    

    // Iterate through the collection of trace records and write 
    // them to the response stream.
    foreach(object o in e.TraceRecords)
    {
        r = (TraceContextRecord)o;
        Response.Write(String.Format("trace message: {0} <BR>", r.Message));
    }
}       
</script>

.NET Framework
Available since 2.0
Return to top
Show: