为了账号安全,请及时绑定邮箱和手机立即绑定

ViewState的value=""

ViewState的value=""

HUH函数 2018-11-02 05:07:57
我查看的时候,发现<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="" />  请问是如何实现的呢?我设EnableViewState为false,运行查看还有有一点值,保存在客服端好像也是不行,郁闷啊!~请问大侠们怎么实现的呢
查看完整描述

2 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

把VIEWSTATE存服务器上就行了。Page.SavePageStateToPersistenceMedium(object)

查看完整回答
反对 回复 2018-11-06
?
郎朗坤

TA贡献1921条经验 获得超9个赞

因为<input name="__VIEWSTATE" />里面存放的不仅有ViewState的信息,还有ControlState的信息。 ViewState信息可以禁用,但是ControlState是禁用不了的,只要你用了设置有ControlState的服务器控件,页面一般就会有信息放入__VIEWSTATE中。

之所以博客园的干净,是因为它家很少用到复杂的服务器控件。

你用Reflector查看下System.Web.UI.Control类中的虚方法 SaveControlState();,然后看看GridView和Literal中对它的重写就明白之间的区别了。理论上Literal直接继承这个方法,不重写。因为默认的State是空的。 GridView中则重写了这个方法,保存了一些信息到ViewState中。


查看完整回答
反对 回复 2018-11-06
  • 2 回答
  • 0 关注
  • 511 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信