我看到即使我在页面级别设置了EnableViewState =“false”,也会呈现__VIEWSTATE字段。如果我删除表单元素的runat =“server”标记,则不会呈现此字段。有人可以解释一下吗?
答案 0 :(得分:17)
__VIEWSTATE字段还用于存储控件状态,这不是可选的。此外,视图状态中包含的信息用于验证回发,如果我没有弄错(并且启用了验证,这是默认值)。因此,只要您拥有runat =“server”的表单,就会有一个viewstate字段。但是,如果禁用所有视图状态,则应注意字段大小要小得多。
答案 1 :(得分:0)
提示: 在Asp.net中,如果您需要完全删除__VIEWSTATE,请覆盖Page.Render方法,将页面呈现为字符串,并从中删除__VIEWSTATE文本。