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

ASP.NET
C#教程:简化的初始化
C#教程:隐式类型的局部变量
ASP.NET 2.0教程:Bind标签和Eval标签
用C#语言获取CPU利用率
ASP.Net实例:直接在邮件中内联附件内嵌图片
ASP.NET教程:性能优化的方法
ASP.NET开发方式的四层架构的Web应用系统构造
BasicHTTP-唯一能直接与Java交互的方式
ASP.NET教程:截取字符串
如何用ASP.NET实现多附件上传?
.Net程序员必读:八个实用网站推荐
.NET环境下为网站增加IP过滤功能
在.Net框架类库中如何使用定时器类
Asp.net是可以帮你实现Urlrewrite的
.NET开发过程中易被忽视的问题
ASP.NET教程:多个Set排列算法
c# 分布式事务以及MSDTC
解决ASP.NET2.0网站中对路径访问被拒绝问题
ASP.NET通过WMI创建站点添加虚拟目录和主机头
VS 2008完美地支持JavaScript和ASP.NET AJAX

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


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