All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
php常用数据库备份类_[PHP教程]
PHP按比例控制图片显示(自动缩放函数)_[PHP教程]
ASP.NET底层架构探索之IE6的革新_.net资料_编程技术
C#中for语句用法
PHP截取指定长度的文字_[PHP教程]
动态网页技术PHP通过参数来生成MYSQL语句类_php资料_编程技术
教程:如何实现ASP.NET网站个性化_[Asp.Net教程]
ASP.NET中的STREAMREADER对象总结_[Asp.Net教程]
ASP.NET,FORUMS换肤流程_[Asp.Net教程]
轻松掌握Ajax.net系列教程四:用Ajax.net实现客户端回调(Callback)_[Asp.Net教程]
Reading number is top 10 pictures
Summer is most suitable for young people to travel in China8
Send some Valentine's day cartoon
Summer is most suitable for young people to travel in China6
日本小萝莉1
Chinese paper-cut grilles art appreciation4
Sora aoi possession of boudoir2
超强高考作文
So beauty, will let you spray blood2
Group of female porn in 《westwards》, uninhibited woman threatened to not the bottom line
007 James. bond's new lover
Download software ranking
apache-tomcat-6.0.33
功夫熊猫2(下集)
Boxer's Top ten classic battle3
Tram sex maniac 2 (H) rar bag5
豪门浪荡史
Boxer Classic video3
Unix video tutorial14
Unix video tutorial12
Sora aoi, the maid, students' uniforms
Proficient in Eclipse
delv published in(发表于) 2014/1/16 9:34:33 Edit(编辑)
过滤ASP.NET输出HTML中的无用空格_[Asp.Net教程]

过滤ASP.NET输出HTML中的无用空格_[Asp.Net教程]

过滤ASP.NET输出HTML中的无用空格_[Asp.Net教程]

刚才“不小心”检查了一下ASP.NET生成的代码,惊讶地发现ASP.NET输出的代码居然如此地不紧凑,在标签之间有无数的空格和制表符(TAB),特别是用了嵌套表格之后,那景象真是惨不忍睹啊,有图为证:


照理说在ASP.NET生成的代码中添加这么多无用的空格/tab可能是为了使生成的HTML代码更具可读性,但是由此带来的问题就是使输出的代码变大了,在带宽有限的今天简直就是一种犯罪,浪费用户的钱财,影响用户的体验嘛!而且ASP.NET属于服务器端编程,不可能会直接编辑最终生成的HTML代码,就算把所有的空格/Tab都去了,也不会带来任何不好的影响的吧!?


基于以上考虑,祭出Reflector,果然发现HtmlTextWriter中有Indent属性控制着缩进大小,而且幸运的是该属性还是public类型的,真是天助我也,花了几分钟时间,捣鼓出如下代码:
1 public class FilterHtmlTextWriter : HtmlTextWriter
2 {
3 public FilterHtmlTextWriter(TextWriter writer, string tabString)
4 : base(writer, tabString)
5 {
6 }
7
8 public new int Indent
9 {
10 get { return 0; } // 始终返回0
11 set { base.Indent = 0; } // 始终置0
12 }
13 }
然后重载页面的Render方法(如果所有页面有公共的基类的话就更好了),加入一行代码,如下:
1 public partial class _Default : System.Web.UI.Page
2 {
3 protected override void Render(HtmlTextWriter writer)
4 {
5 // 替换writer为我们自定义的类
6 writer = new FilterHtmlTextWriter(writer.InnerWriter, "");
7 base.Render(writer);
8 }
9 //
10 }
至此大功告成,让我们重新看看页面的输出,哇塞,讨厌的空格果然变少了@_@,如下图所示:


http://www.cnblogs.com/leafyoung/archive/2007/02/05/640882.html







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.