TraceContextRecord Class

 

Represents an ASP.NET trace message and any associated data.

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

System.Object
  System.Web.TraceContextRecord

public sealed class TraceContextRecord

NameDescription
System_CAPS_pubmethodTraceContextRecord(String, String, Boolean, Exception)

Initializes a new instance of the TraceContextRecord class.

NameDescription
System_CAPS_pubpropertyCategory

Gets the user-defined category for the trace record.

System_CAPS_pubpropertyErrorInfo

Gets the Exception associated with the trace record, if one is available.

System_CAPS_pubpropertyIsWarning

Gets a value indicating whether the trace record is associated with a TraceContext.Warn method call.

System_CAPS_pubpropertyMessage

Gets the user-defined trace message.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

The TraceContextRecord object encapsulates the trace message, category, any associated Exception, and whether the trace record was written by the TraceContext.Warn method.

Every call to the TraceContext.Write and TraceContext.Warn methods generates a TraceContextRecord object that is added to the TraceContextEventArgs.TraceRecords messages collection. You can access the collection of records by handling the TraceFinished event.

The following code example demonstrates how you can register a TraceContextEventHandler delegate to handle the TraceFinished event. In this example, the OnTraceFinished method accesses the collection of TraceContextRecord objects through the TraceRecords property, iterates through them, and writes them to the response stream.

<%@ 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

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: