如果我有一个会话[“test”] =一些“哈希表”对象,并且我将这个会话变量分配给一个视图状态对象Viewstate [“test”],当会话变量到期或发生变化时会发生什么?
视图状态变量是仅存储对它的引用,还是它自己的副本?
如果session [“test”]被重新分配或设置为null,那么视图状态变量是否也被重新赋值/设置为null?
答案 0 :(得分:1)
它们是分开的,因为ViewState由标记中的隐藏字段支持。会话以明确的到期时间存储在内存中。 ViewState不受此限制,因为它是针对每个请求/响应从隐藏字段序列化/反序列化的。
只需查看您网页上的来源,您就会发现一个名为ViewState
的隐藏字段,它是64位编码的,但如果您对其进行解码,则会以明文形式查看内容。