Suj*_*jit 11 asp.net viewstate page-lifecycle
我一直听到这个词"Viewstate Chunking".什么是Viewstate Chunking?
它是如何为ASP.NET页面工作的?
小智 16
当页面中的ViewState变得非常大时,可能会出现问题,因为某些防火墙和代理会阻止访问包含巨大ViewState大小的页面.为此,ASP.NET引入了ViewState Chunking机制.因此,ASP.NET允许使用web.config部分中的MaxPageStateFieldLength属性将ViewState的单个隐藏字段拆分为多个.
当MaxPageStateFieldLength属性设置为正数时,发送到客户端浏览器的视图状态将分为多个隐藏字段.
将MaxPageStateFieldLength属性设置为负数(默认值)表示不应将视图状态字段分隔为块.将MaxPageStateFieldLength设置为较小的数字可能会导致性能下降.
示例ViewState之前:
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"value="/wEPDwUKLTk2Njk3OTQxNg9kFgICAw9kFgICCQ88KwANAGQYAQUJR3Jp
ZFZpZXcxD2dk4sjERFfnDXV/hMFGAL10HQUnZbk=" />
Run Code Online (Sandbox Code Playgroud)
然后在web.config中设置:
<pages maxPageStateFieldLength="40">
Run Code Online (Sandbox Code Playgroud)
示例ViewState后:
<input type="hidden" name="__VIEWSTATEFIELDCOUNT" id="__VIEWSTATEFIELDCOUNT"value="3" />
<input type="hidden" name="__VIEWSTATE"
id="__VIEWSTATE" value="/wEPDwUKLTk2Njk3OTQxNg9kFgICAw9kFgICCQ88" />
<input type="hidden" name="__VIEWSTATE1"
id="__VIEWSTATE1" value="KwANAGQYAQUJR3JpZFZpZXcxD2dk4sjERFfnDXV/" />
<input type="hidden" name="__VIEWSTATE2"
id="__VIEWSTATE2" value="hMFGAL10HQUnZbk=" />
Run Code Online (Sandbox Code Playgroud)
希望对你有所帮助!
归档时间: |
|
查看次数: |
5225 次 |
最近记录: |