【问题标题】:what happens when a session variable is assigned to a viewstate?将会话变量分配给视图状态时会发生什么?
【发布时间】:2013-10-03 00:07:17
【问题描述】:

如果我有一个 session["test"] = some "hashtable" 对象,并且我将此会话变量分配给一个视图状态对象 Viewstate["test"],那么当会话变量过期或更改时会发生什么?

视图状态变量是只存储对它的引用还是它自己的副本?

如果 session["test"] 被重新分配或设置为 null,视图状态变量是否也被重新分配/设置为 null?

【问题讨论】:

    标签: html asp.net session viewstate


    【解决方案1】:

    它们是分开的,因为 ViewState 由标记中的隐藏字段支持。会话存储在内存中,具有明确的到期时间。 ViewState 不受此约束,因为它是从每个请求/响应的隐藏字段中序列化/反序列化的。

    只需在您的页面上查看源代码,您会发现一个名为 ViewState 的隐藏字段,它是 base 64 编码的,但如果您对其进行解码,您将看到明文形式的内容。

    【讨论】:

      猜你喜欢
      • 2017-09-15
      • 1970-01-01
      • 2012-09-08
      • 1970-01-01
      • 1970-01-01
      • 2016-09-22
      • 1970-01-01
      • 2015-11-22
      • 1970-01-01
      相关资源
      最近更新 更多