用戶端狀態管理選項
優點 | 缺點 | |
檢視狀態 | 不需要伺服器資源 實作簡單 增強安全性功能 | 效能考量 裝置限制 潛在安全性風險 |
控制項狀態 | 不需要伺服器資源 可靠性 全面性 | 需要部分程式設計工作 |
隱藏欄位 | 不需要伺服器資源 廣泛支援 簡單實作 | 潛在安全性風險 簡單的儲存架構 效能考量 儲存限制 |
Cookie | 可設定的到期規則 不需要伺服器資源 簡化 資料保存性 | 大小限制 使用者設定的拒絕 潛在安全性風險 |
查詢字串 | 不需要伺服器資源 廣泛支援 簡單實作 | 潛在安全性風險 容量限制 |
用戶端方法狀態管理摘要
狀態管理選項 | 建議的使用方式 |
檢視狀態 | 當您需要儲存網頁將回傳本身的少量資訊時使用。使用 ViewState 屬性會提供基本安全性功能。 |
控制項狀態 | 當您需要儲存伺服器來回往返之間控制的少量狀態資訊時使用。 |
隱藏欄位 | 您需要儲存網頁將回傳本身或其他網頁的少量資訊,而且不考量安全性的問題時使用。 (注意事項:您只能在送至伺服器的網頁上使用隱藏欄位。) |
Cookie | 當您需要在用戶端上儲存少量資訊,而且不考量安全性的問題時使用。 |
查詢字串 | 當您要將少量資訊從一網頁傳輸至另一網頁,而且不考量安全性的問題時使用。 (注意事項:只有在要求相同網頁,或透過連結要求另一網頁時,才能使用查詢字串。) |
伺服器端狀態管理選項
優點 | 缺點 | |
應用程式狀態 | 實作簡單 應用程式範圍 | 應用程式範圍 有限的資料耐久性 資源需求 |
工作階段狀態 | 實作簡單 工作階段特定事件 資料保存性 平台延展性 Cookieless 支援 擴充性 | 效能考量 |
設定檔屬性 | 資料保存性 平台延展性 擴充性 | 效能考量 額外設定的需求 資料維護 |
資料庫支援 | 安全性 儲存空間 資料保存性 強固性和資料完整性 協助工具 廣泛支援 | 複雜度 效能考量 |
伺服器端方法狀態管理摘要
狀態管理選項 | 建議的使用方式 |
應用程式狀態 | 當您正在儲存變更頻率低、由許多使用者使用的全域資訊、而且不考量安全性的問題時使用。 請勿在應用程式狀態中儲存大量資訊。 |
工作階段狀態 | 當您要儲存個別工作階段專用且存留期短暫的資訊,同時必須顧慮安全性時使用。 請勿在工作階段狀態中儲存大量資訊。 請注意,工作階段狀態物件會在您應用程式中每個工作階段的存留期期間建立並維護。 在擁有許多使用者的應用程式中,這可能會佔用大量的伺服器資源並且影響延展性。 |
設定檔屬性 | 當您儲存在工作階段過期後需要保存的使用者特定資訊,並且在後續造訪應用程式需要再度擷取時使用。 |
資料庫支援 | 當您儲存大量資訊、管理交易、或是資料必須不受應用程式和工作階段重新啟動的影響時使用。 資料採擷是重要的,而且也必須顧慮安全性。 |
參考資料: ASP.NET 狀態管理建議事項
沒有留言:
張貼留言