我已經讀過,你可以做到這一點,但這會真的提高頁面的性能,還是會帶來更多的性能開銷?在會話或數據庫中存儲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. 將數據集存儲在ViewState或會話狀態
- 2. 使用Cookie進行Web會話狀態 - 有哪些缺陷?
- 3. PHP - 將大會話數組存儲在$ _SESSION或數據庫中?
- 4. 在數據庫中存儲Viewstate會禁用我的asp:ImageButtons事件
- 5. Viewstate存儲數據?
- 6. 在數據庫或會話中存儲安全性查找?
- 7. 數據庫設計缺陷
- 8. 數據庫設計缺陷?
- 9. 哪個MySQL數據庫引擎更適合存儲會話和會話數據:MyISAM或InnoDB?
- 10. PHP哪些變量保存在會話中 - 哪些不保存
- 11. 會話數據庫存儲laravel
- 12. 使用mysql2數據庫在會話中存儲數據
- 13. PHP登錄 - 從數據庫獲取用戶數據或存儲在會話中?
- 14. 如何知道哪些屬性存儲在ControlState中以及哪些屬性存儲在ViewState中?
- 15. ViewState存儲多少數據?
- 16. 將數據保存在數據庫或會話中
- 17. 會話或ViewState字典
- 18. 將數據存儲在會話中
- 19. 在會話cookie中存儲數據
- 20. 在多個會話中存儲數據
- 21. 在會話中存儲表格數據
- 22. 在asp.net中存儲會話數據mvc
- 23. ViewState的 - 適當的方式存儲在數據庫數據
- 24. 應該在會話中存儲哪些屬性
- 25. 會話存儲不存儲數據
- 26. 我的平等堆棧算法存在哪些缺陷?
- 27. 我的穩定分區算法存在哪些缺陷?
- 28. 存儲會話數據
- 29. 緩存或存儲會話?
- 30. 哪個編譯器(如果有的話)在參數包擴展中有缺陷?
人,大點在那裏,所以我覺得做視圖狀態的最好的事情是壓縮它,使用它最大限度地減少時,可能 – DevMania 2009-04-30 22:12:42
是的,如果你可以用它完全然後最小化,這將是你最好的選擇。 – triniMahn 2009-04-30 22:21:54