混小子工作室

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

这个错误的根源就是asp.net2.0 的GridView

如果用GridView,并且指定了DataKeyNames属性,则出于安全的理由(因为DataKeyNames指定的字段代表数据的主键,且该主键值需要保存在视图状态中发送到客户端,用户如果篡改主键值,会导致安全问题),GridView会要求加密视图状态。为此会自动在页面表单</forms>之前添加一个<input type="hidden" name="__VIEWSTATEENCRYPTED" id="__VIEWSTATEENCRYPTED" value="" /> 。然而,Atlas的UpdatePanel要求放置在<form></form>内部,也就是</form>之前。

<pages validateRequest="false"/>改为:

<pages enableEventValidation="false" viewStateEncryptionMode ="Never" />

posted on 2007-09-17 11:32  混小子  阅读(2887)  评论(2编辑  收藏  举报