The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

寫 ASP.NET 可利用 <asp:PlaceHolder> 降低 ViewState 大小

前幾天在調整一個網站的執行效能時,發現有幾頁的 ViewState 特別大,但是內容卻蠻簡單的,最主要就是一個 Repeater 控制項,內容不多,但 ItemTemplate 中只有用到一個 LinkButton 控制項,其他都是一般的 HTML 標籤加上 DataBound 語法 ( <%# Eval("XXX", "") %> ),由於我有用到 UpdatePanel 包住這個 Repeater 控制項,所以我 ViewState 不能關閉,關閉就會導致錯誤發生,所以我只能在 ItemTemplate 盡可能降低 ViewState 的使用,不過就因為除了 LinkButton 控制項之外的地方我都沒有可以調整的地方,才讓我想到還有個 PlaceHolder 控制項可用。

... 繼續閱讀 ...

控制 DropDownList 產生的 ViewState 資料量

在每一個 ASP.NET 專案中通常都會用到好多 DropDownList 控制項,不過我想很多人不會特別注意到 DropDownList 會產生多少 ViewState,預設來說 DropDownList 控制項會將所有選項 ( ListItem ) 的資料都先儲存到 ViewState 中,以利如果選項很多的話就很有可能導致 ViewState 突然變很大,不但讓網頁下載回應速度變慢,也浪費網路頻寬。

... 繼續閱讀 ...