【发布时间】:2009-12-20 12:25:39
【问题描述】:
我有一个 asp:Gridview 绑定到一个 asp:ObjectDataSource。我在 GridView 上禁用了 ViewState,并且没有设置 DataKeyNames 属性。我有大约 10 个 BoundFields 和一些 TemplateFields。这些 TemplateField 不绑定到服务器控件,而是绑定到锚标记或 img 标记。
但是,在运行时,当我打开页面跟踪时,我看到 Gridview 的 ControlState 在 7 到 12K 之间变化,仅显示 14 行数据。 (呈现页面上的查看源代码也在 __VIEWSTATE 隐藏字段中提供了相同的长字符串)。我不明白为什么会发生这种情况,因为我在 gridview 上有 enableViewState="false" 并且如上所述,我没有使用 DataKeyNames。那么,这个 Gridview ControlState 是从哪里来的,有没有办法摆脱它呢?
提前致谢, 蒂姆
【问题讨论】:
-
您确定 ViewState 来自 GridView 吗?您是否尝试过在页面级别禁用 ViewState?
标签: asp.net gridview viewstate