我已經讀過,你可以做到這一點,但這會真的提高頁面的性能,還是會帶來更多的性能開銷?在會話或數據庫中存儲Viewstate有哪些缺陷
2
A
回答
3
視圖狀態數據是指被加密,序列化到頁面上的隱藏標籤的頁面信息。
如果你可以將其存儲在會話這些都是一些問題/陷阱:
- 的信息仍有待加密/解密和串行/從內存
- 反序列化,如果你有很多的用戶和會話數據存儲在進程中,甚至使用狀態服務器,您將使用視圖狀態數據來最大化這些服務器上的內存。
- 如果您使用SQL Server進行會話狀態,這顯然會變得更糟(請參閱下文)。
如果你可以將其存儲在SQL Server中這些將是一些問題:
- 再次,信息仍然被序列化/反序列化(不一定加密/解密,因爲它不是輸出到頁面),但在這種情況下,必須從SQL DB讀取/寫入。從數據庫讀取/寫入數據時,您將在從數據庫和I/O傳輸數據的過程中產生開銷。
6
下面是關於在Session對象存儲的ViewState信息的好文章由Scott Hanselman在:
Moving ViewState to the Session Object and more Wrongheadedness
相關問題
- 1. Sitecore - 在渲染字段中存儲內容有哪些缺陷
- 2. 將數據集存儲在ViewState或會話狀態
- 3. 使用Cookie進行Web會話狀態 - 有哪些缺陷?
- 4. 我應該在PHP會話中存儲哪些數據?
- 5. 將數據表(10,000行)存儲在會話變量中的缺陷?
- 6. 將會話存儲在數據庫中
- 7. 在數據庫中存儲Viewstate會禁用我的asp:ImageButtons事件
- 8. PHP - 將大會話數組存儲在$ _SESSION或數據庫中?
- 9. Viewstate存儲數據?
- 10. 上傳文件並存儲在會話或數據庫中
- 11. 在數據庫或會話中存儲安全性查找?
- 12. ViewState存儲在哪裏?
- 13. PHP會話安全缺陷?
- 14. 會話存儲在哪裏?
- 15. 數據庫設計缺陷?
- 16. 數據庫設計缺陷
- 17. 存儲會話運行或節點中的數據庫
- 18. PHP會話中沒有存儲數據對於某些用戶
- 19. PHP哪些變量保存在會話中 - 哪些不保存
- 20. 在ViewState中存儲數據表
- 21. 如何知道哪些屬性存儲在ControlState中以及哪些屬性存儲在ViewState中?
- 22. 會話數據庫存儲laravel
- 23. 將會話數據存儲在數據庫和memcache中
- 24. 使用mysql2數據庫在會話中存儲數據
- 25. 在數據庫中存儲會話數據更好bytea或文本類型列
- 26. PHP登錄 - 從數據庫獲取用戶數據或存儲在會話中?
- 27. 會話數據在redmine中存儲在哪裏?
- 28. 如何查找哪些會話變量在Rails2中存儲數據?
- 29. ViewState存儲多少數據?
- 30. 在SQL Server表中存儲規範化數據有哪些優缺點
人,大點在那裏,所以我覺得做視圖狀態的最好的事情是壓縮它,使用它最大限度地減少時,可能 – DevMania 2009-04-30 22:12:42
是的,如果你可以用它完全然後最小化,這將是你最好的選擇。 – triniMahn 2009-04-30 22:21:54