首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 應用程式除錯技巧:Trace 類完整應用

     編輯:關於ASP.NET

傳統 Response.Write 除錯汙染輸出、佈署前須手動移除。ASP.NET 內建 Trace 類提供結構化、可控制的診斷輸出。

啟用 Trace

頁面指令加入 Trace="true":

<%@ Page Trace="true" %>
或在 web.config 整站啟用:

<trace enabled="true" pageOutput="true" requestLimit="40" localOnly="true" />

基本用法

protected void Page_Load(object sender, EventArgs e)
{
    Trace.Write("Page_Load", "開始載入頁面");
    if (!IsPostBack)
        Trace.Write("Page_Load", "首次載入,非 PostBack");
    else
        Trace.Write("Page_Load", "PostBack 觸發");
}

protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    Trace.Write("ListBox", "選項變更觸發 PostBack");
}

Trace 輸出內容

頁面底部自動顯示表格,包含:
  • Request Details:SessionID、編碼、請求類型、時間戳。
  • Trace Information:自訂分類與訊息、時間戳、執行緒。
  • Control Tree:所有控件 ID、型別、ViewState 大小、Render 大小。
  • Session/Application State:鍵值對列表。
  • Cookies/Headers/QueryString:完整收發標頭。

進階技巧

  • Trace.Warn:紅字顯示,適合錯誤/警告級別。
  • Trace.IsEnabled 判斷後再執行昂貴的診斷邏輯(如序列化大物件)。
  • TraceContext 可在非頁面類別(HttpModule、Service)中透過 HttpContext.Current.Trace 存取。

生產環境建議

  • 設定 localOnly="true" 僅本機顯示。
  • 關閉 pageOutput,改用 trace.axd 專用頁面檢視(<trace enabled="true" pageOutput="false" />)。
  • 定期清理舊追蹤記錄(requestLimit 控制保留筆數)。

Trace 讓除錯資訊「隨時可看、佈署不殘留」,是 ASP.NET 開發者必備技能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved