程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> 只在必要時保存服務器控件視圖狀態

只在必要時保存服務器控件視圖狀態

編輯:關於C#
 

自動視圖狀態管理是服務器控件的功能,該功能使服務器控件可以在往返過程上重新填充它們的屬性值(您不需要編寫任何代碼)。但是,因為服務器控件的視圖狀態在隱藏的窗體字段中往返於服務器,所以該功能確實會對性能產生影響。您應該知道在哪些情況下視圖狀態會有所幫助,在哪些情況下它影響頁的性能。例如,如果您將服務器控件綁定到每個往返過程上的數據,則將用從數據綁定操作獲得的新值替換保存的視圖狀態。在這種情況下,禁用視圖狀態可以節省處理時間。
  默認情況下,為所有服務器控件啟用視圖狀態。若要禁用視圖狀態,請將控件的EnableViewState 屬性設置為 false,如下面的 DataGrid 服務器控件示例所示。
<asp:datagrid EnableViewState="false" datasource="..." runat="server"/>

您還可以使用 @ Page 指令禁用整個頁的視圖狀態。當您不從頁回發到服務器時,這將十分有用:

<%@ Page EnableViewState="false" %>

  注意 @ Control 指令中也支持 EnableViewState 屬性,該指令允許您控制是否為用戶控件啟用視圖狀態。
  若要分析頁上服務器控件使用的視圖狀態的數量,請(通過將 trace="true" 屬性包括在 @ Page 指令中)啟用該頁的跟蹤並查看 Control Hierarchy 表的 Viewstate 列。有關跟蹤和如何啟用它的信息,請參見 ASP.NET 跟蹤。
 

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved