2012-11-19 82 views
2

我知道SessionState在会话消失时清除 - 通常在闲置20分钟后。 我的问题是ViewState会话何时死亡?还是它永远不会死?有什么方法可以清除它?什么时候ViewState会话被清除?

+0

除了下面的答案..你也可以发出一个'Response.Redirect'到同一个URL。 –

+0

页面内部是否存在,如果您转到其他页面,则会死亡,如果您发回帖子,则显示在后面的代码中。 – Aristos

回答

8

Viewstate只要在页面上持续,它就会随HTML一起输出;检查你的渲染页面的源代码,你会看到一个隐藏字段中的文本的负载。

喜欢的东西:

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNTIyODQ4NzI..... 

一旦页面走了,就不见了。

你可以通过调用

ViewState.Clear() 
+0

谢谢达伦。你回答了我的问题。 –

+0

不客气。请将其标记为已回答 - 将来也可以帮助其他人:)并且保持您的接受率(这意味着人们在将来也会为您提供更多帮助:)) – Darren

1

旧ViewState中清除它,就像old soldiers,永远不会死,它只是消失...

它存储在HTML页面中隐藏字段,并保持活着在浏览器的缓存中。