2015年6月14日 星期日

[.net] ViewState Session QueryString 比較

上禮拜跟新同事討論到ViewState  Session的差異
因新同事以前都比較常使用到ViewState而較少使用Session

後來上網找了一下
發現ViewState  Session差蠻多的

ViewState
主要是和Page_load共存亡
好處是不占記憶體,適合單獨頁面client傳遞參數用,但數量較大時仍會影響頻寬
(不過網路上看到的說法頻寬差不了太多)


Session
將資料存放記憶體,相對於ViewState來說方便的是讓兩支aspx交換呈現時,資料仍存在
可以跨頁,資料有時效性(同時是優點也是缺點),且安全性相較起來比較高

而Session也需要注意命名,若兩個頁面取相同的session名稱
則會造成後蓋前的狀況發生



QueryString
可以存放的容量較小,此方式就是把資訊存在網誌上面,再取擷取下來
此方式也不占記憶體,適合拿來用在查詢時所需要的參數傳遞
(但如果參數是有含個資的,此方式可能仍要考慮看看適不適合)

筆記做個紀錄
如果看到有說明錯誤的還請指教補充...


參考資料 :
http://www.blueshop.com.tw/board/FUM20041006161839LRJ/BRD20070503235630H1B.html
http://dotnetdic.blogspot.tw/2009/01/aspnet.html