当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET:设置页面buffer引出来的问题

ASP.NET
从ASP.NET的PHP执行速度比较谈起
基于ASP.NET2.0的非HttpModule山寨版MVC框架的实现
ASP.NET 中公有的六种验证控件
无废话C#设计模式之八:Facade
C# 中的 @ 符号的使用及注意事项
保护你的.Net代码:谁动了我的组件?
VS2008与.NET 3.5的JS智能感知和调试
关于 .Net 开发下的分布式缓存设计
在C#3.0中使用扩展方法来扩展接口
C#实现Windows 服务的制作安装和删除
C#3.0中实现隐式类型变量、匿名类型的方法
C#代码与javaScript函数的相互调用
构建 ASP.NET AJAX 开发环境
Windows 窗体的.Net 框架绘图技术
.NET 开发中的一些小技巧集锦
ASP.NET 2.0 创建母版页引来的麻烦
.NET Compact Framework 概述
.NET Compact Framework 2.0 SP1新增功能
专家访谈:从Web 2.0到Web 3.0
.Net里漂浮窗口拖动的实现方法

ASP.NET:设置页面buffer引出来的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 258 ::
收藏到网摘: n/a

前几天,在程序使用Respoonse.Redirect("a.aspx?f=9#12")的时候,发现在IE里面,跳转之后的页面忽略了#之后的内容,奇怪的是在同一页面向自己Redirect的时候,这个问题就不会存在,百思不得其解,有病乱投医吧,上网狂搜了一把,有人说设置页面Buffer为false可能解决这个问题,于是将a页面的buffer设置了false,经过验证,这个与上述问题不相干,但是一时疏忽,忘记了没有将buffer修改过来,昨天项目发布,放到服务器上发祥a页面的执行时间大的惊人,页面内容稍微大一点,页面往往会超时,而实现同一功能的b页面执行时间基本为0-16,而a页面数据库查询次数为3,b页面为7,这就更让人纳闷了,在本地试了下,b页面基本上和服务器没什么区别,a页面在90-300ms之间,而明显的b页面要表现的数据和查询的次数都要比a多,两者从页面结构上来说,基本一样,因为二者共同使用了相同的UserControl,只有中间部分表现形式稍微不同而已,同在一个屋檐下的人,差距怎么这么大呢?纳闷之余,一个个删除页面元素,发现根本不起本质作用,b页面就是出奇的快,a页面跟中风一样,慢的可以,于是找亚找,基本说是将a改了个遍,就差说闹鬼了得时候,突然发现a页面的buffer设置了false,而b赫然是true, 豁然开朗,铁钉就是这里问题,马上更正过来,good!a页面马上快了起来。

一次不小心,造成如此的麻烦,不过总结了一下规律,在buffer设置为false得时候,与设置true,页面在处理时间上基本相差10-20倍的关系,如果以后发现同样功能的页面,速度相差不少,排除了数据处理等因素,应该考虑一下是否存在上述问题。