繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> Asp.Net开发 >> 小议优化ASP.NET应用性能之ViewState篇(1)

小议优化ASP.NET应用性能之ViewState篇(1)

2007-09-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:如果你有在IE中查看当前浏览页面HTML源代码的习惯,你也许常会看到类似以下的代码片断:

如果你有在IE中查看当前浏览页面HTML源代码的习惯,你也许常会看到类似以下的代码片断:

Machine级 在machine.config中设置

Application级 在Web Applicatin的web.config中设置

单页面级 在该页面中设置<%@Page enableViewStateMac='false' %>或通过代码设置Page.EnableViewStateMac = false;

可是,如果我们完全能通过禁用ViewState来解决数据传输负担而且不产生副作用的话,那MS的架构师们也不会傻到如此可爱的地步(可有可无的东东留它何用?),正因我们往往不能通过简单的禁用来解决这个传输负担问题,所以我们只能另辟路径使之在网络往返中传输量尽可能地小,于是,压缩成了我们的首选。只要我们重载Page类的SavePageStateToPersistenceMedium()方法与LoadPageStateFromPersistenceMedium()方法,并在重载方法中对数据进行压缩与解压的处理即可。开源项目SharpZipLib提供的类GZipInputStream与GZipOutputStream进入了我们的视野,为了方便,不妨写个类CompressionHelper,代码如下:

1using System.IO;

2using ICSharpCode.SharpZipLib.GZip;

3

4namespace Ycweb.Components

5{

6 /**////

7 /// Summary description for CompressionHelper.

8 ///

9 public class CompressionHelper

10 {

11 public CompressionHelper()

12 {

13 //

14 // TODO: Add constructor logic here

15 //

16 }

17

18 /**////

19 /// 压缩数据

20 ///

21 /// 待压缩的字节数组

22 /// 压缩后的字节数组

23 public static byte[] CompressByte(byte[] data)

24 {

25 MemoryStream ms = new MemoryStream();

做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。

责任编辑:admin
相关文章