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

ASP.NET
asp.net图片加水印
Asp.Net中页面运行时动态载入的UserControl内元素的事
ASP.NET底层架构探索之再谈.NET运行时(二)
借助封装类实现线程调用带参方法
面向对象设计思想(C#)
asp.net URL重写(URLRewriter) 简化版
GUID在.net里的使用,就用System.Guid结构
不要忽略c#中的using和as操作符
C#中ref和out的使用小结
C#的Web XML编程
asp.net2.0下 如何实现服务器端压缩包自解压
javascript如何调用C#后台代码中的过程 和ASP.NET调用
在ASP.NET中自动给URL加上超链接
ASP.NET 中处理页面“回退”的方法
ASP.NET的四种错误机制
asp.net跳转页面的三种方法比较
ASP.NET2.0中将GridView导出到Excel文件中
ASP.NET 2.0中GridView无限层复杂表头的实现
ASP.NET 2.0 中动态添加 GridView 模板列
十天学会ASP.net之第一天

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 96 ::
收藏到网摘: 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倍的关系,如果以后发现同样功能的页面,速度相差不少,排除了数据处理等因素,应该考虑一下是否存在上述问题。