视图状态方法有哪些局限性?

时间:2010-08-27 11:28:36

标签: asp.net viewstate

我知道视图状态方法仅限于特定页面。当我们导航到另一个页面时,信息就会丢失。除了这个限制,视图状态有任何限制吗?

2 个答案:

答案 0 :(得分:1)

我不知道这些是不是“限制”,但它们肯定是你应该避免某些事情的观点的原因。

  1. 随着每个页面请求上传和下载ViewState中的所有数据。
  2. ViewState中的数据不安全,因为它是可用的客户端。
  3. viewstate中的所有项目都必须是可序列化的。
  4. 您无法在ViewState中存储服务器端资源(想想数据库连接等),因为每个请求都是新生成的项目(它们不是同一个对象)
  5. 你想用ViewState做什么?

答案 1 :(得分:0)

唯一真正的限制是视图状态会爆炸页面大小(如果没有注意,最多可达数兆字节)。放入视图状态的东西越多,为自己做的越方便,用户就越不方便,特别是那些使用拨号连接的用户。

如果将网络组件配置为限制提交大小,则可能存在一些网络问题。我听说过代理服务器对隐藏字段(存储视图状态)施加限制的事情。