Asp.net 回发和视图状态(datagrid)之间的关系
在本文“使用EnableViewState属性提高性能”中,我看不出他们在哪里将EnableViewState设置为false。他们就是这样Asp.net 回发和视图状态(datagrid)之间的关系,asp.net,gridview,postback,viewstate,Asp.net,Gridview,Postback,Viewstate,在本文“使用EnableViewState属性提高性能”中,我看不出他们在哪里将EnableViewState设置为false。他们就是这样 If Not Me.IsPostBack() Then ... DataGrid1.DataBind() 回发是否与ViewState相同 为什么不在datagrid控件上启用ViewState=false?这篇文章明确指出,第一个示例(您退出的部分)通常是在启用“ViewState”的情况下完成的。因为只有第一个get请求需要将网格绑定到数据源(如果不
If Not Me.IsPostBack() Then
...
DataGrid1.DataBind()
回发是否与ViewState相同
为什么不在datagrid控件上启用ViewState=false?这篇文章明确指出,第一个示例(您退出的部分)通常是在启用“ViewState”的情况下完成的。因为只有第一个get请求需要将网格绑定到数据源(
如果不是Me.IsPostBack()
),因为连续的回发将从保存的ViewState还原网格数据
Page_Load方法的第二个示例假定.aspx文件中已禁用ViewState,并在每次加载页面时将网格绑定到数据源
调用
Me.IsPostBack
仅检查表单是否通过http post访问,而ViewState是一个对象,它保存与ASP.NET服务器控件的可视化表示相关的所有信息。所以,不,他们不一样 网格控件充当许多控件的容器。每个控件在ViewState中存储大量信息
默认情况下,ViewState存储在隐藏控件中。这意味着它在每个页面请求时都被发送到客户端。为了避免这种开销,可以将EnableViewState设置为false
<asp:GridView ID="GridView1" runat="server" EnableViewState="false">
SessionPageStatePersister利用与关联的服务器会话
用于存储数据的浏览器会话。使用会话而不是
隐藏字段可避免增加发送到和的页面大小
从浏览器。在许多情况下,页面状态是一个重要的参数
整体标记的一部分。但是,在会话中存储此数据
消耗宝贵的服务器资源
假设这是在.aspx
文件中设置的?