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

ASP.NET 狀態管理:客戶端狀態管理總覽

     編輯:關於ASP.NET

無狀態 HTTP 與狀態管理必要性

Web 表單頁面每次回發都會重新建立類別實例,頁面與控制項資訊若不主動保存將遺失。狀態管理即在多個請求間維護狀態與頁面資訊的過程。

客戶端狀態管理選項對比

技術儲存位置容量安全性適用場景
ViewState頁面隱藏欄位 (Base64)單頁面可啟用 MAC 驗證防篡改控制項屬性、頁面級資料
ControlState頁面隱藏欄位單控制項不可關閉,較安全自訂控制項核心運作資料(如 Tab 索引)
HiddenField頁面隱藏欄位單一值明文,易竄改ViewState/Session 不可用時的備援
Cookie用戶端硬碟4KB/個可設 HttpOnly/Secure跨頁面、跨會話的用戶偏好/身分識別
QueryStringURL~2KB (IE)明文,極易竄改頁面間簡單非敏感參數傳遞

選擇建議

  • 優先使用 ViewState/ControlState 處理控制項狀態。
  • 跨頁面共享資料用 Session 或 Cookie(視敏感度)。
  • 隱藏欄位、查詢字串僅作為特定場景補充。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved