在ASP.NET中,怎麼壓縮輸出的HTML內容,怎麼替換HTML中的換行符,空白,TAB等符號呢?
1.新建一個基類,繼承自System.Web.UI.Page,代碼如下:
using System.IO;
using System.Text.RegularExpressions;
using System.Web.UI;
namespace Web.HttpModel.Demo
{
/// <summary>
/// PageBase
/// </summary>
public class PageBase : Page
{
/// <summary>
/// 重寫Render方法,來壓縮輸出的內容
/// </summary>
/// <param name="writer"></param>
protected override void Render(HtmlTextWriter writer)
{
StringWriter html = new StringWriter();
HtmlTextWriter tw = new HtmlTextWriter(html);
base.Render(tw);
string outhtml = html.ToString();
//壓縮
outhtml = Regex.Replace(outhtml, @"(?<=>)\s|\n|\t(?=<)", string.Empty);
outhtml = outhtml.Trim();
//輸出到客戶端
writer.Write(outhtml);
}
}
}
2.新建Default.aspx頁面,然後繼承自上面的基類:PageBase,然後直接運行項目,然後查看源代碼,如下圖: