国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

過濾ASP.NET輸出HTML中的無用空格

2020-03-24 15:45:05
字體:
來源:轉載
供稿:網友

  剛才“不小心”檢查了一下ASP.NET生成的代碼,驚訝地發現ASP.NET輸出的代碼居然如此地不緊湊,在標簽之間有無數的空格和制表符(TAB),特別是用了嵌套表格之后,那景象真是慘不忍睹啊,有圖為證:

過濾ASP.NET輸出HTML中的無用空格 學知

  照理說在ASP.NET生成的代碼中添加這么多無用的空格/tab可能是為了使生成的HTML代碼更具可讀性,但是由此帶來的問題就是使輸出的代碼變大了,在帶寬有限的今天簡直就是一種犯罪,浪費用戶的錢財,影響用戶的體驗嘛!而且ASP.NET屬于服務器端編程,不可能會直接編輯最終生成的HTML代碼,就算把所有的空格/Tab都去了,也不會帶來任何不好的影響的吧!?

  基于以上考慮,祭出Reflector,果然發現HtmlTextWriter中有Indent屬性控制著縮進大小,而且幸運的是該屬性還是html' target='_blank'>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 }

  至此大功告成,讓我們重新看看頁面的輸出,哇塞,討厭的空格果然變少了@_@,如下圖所示:


鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三穗县| 皮山县| 广昌县| 临潭县| 邵东县| 铁力市| 忻州市| 天等县| 涪陵区| 罗城| 清徐县| 驻马店市| 固安县| 澄城县| 万宁市| 增城市| 册亨县| 班戈县| 祁东县| 赞皇县| 呈贡县| 阜新市| 南城县| 绥江县| 石台县| 黄骅市| 德兴市| 儋州市| 津市市| 曲阜市| 蓝田县| 敦煌市| 灵石县| 应用必备| 井陉县| 遂平县| 班戈县| 砚山县| 名山县| 镇原县| 绵竹市|