ViewState压缩技术

本文介绍了如何通过自定义ViewStateFactory实现ViewState的压缩存储,包括使用服务器Cache、Session、Page、File或Database等方式来减少ViewState代码量。通过在Web.config中设置ViewStateMode,可以灵活选择存储方式。实验证明,这能将ViewState代码从多页Word文档大幅缩减至一行代码,显著提升页面性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ViewState 的使用,大家可以说是又爱又恨,它其中一个特性就是保存页面的状态,对于只是展示的页面,我们可以直接在页面文件中使用 EnableViewState="false" 来将其屏蔽,但是很多时候,我们不得不使用它,可是它产生的页面冗长的html代码有让我们很头疼,下面介绍一种ViewState压缩机制。主要是通过重写 PageStatePersister 来实现。

 

1、开发一个ViewStateFactory,根据不同的配置,修改存储方式。

 

 

2、在Web.config的AppSetting里加上

 

 

3、覆盖页面的PageStatePersister,这里你可以开发一个BasePage,在基类里覆盖,所有的页面集成这个页面

 

 

经测试,ViewState代码从9页Word文档的大小减小为以下一行

<input type="hidden" name="_VIEWSTATE_KEY" id="_VIEWSTATE_KEY" value="VIEWSTATE_li3v0l30keovxerbolgvqcyl_/bbs/69548.html_634365820127654509" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="" />

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值