过滤并替换页面html输出
在 .net 中过滤页面即将输出的所有html,从而改变一定html代码,还是很有需求的,具体的实现方法就是重写 页面的 Render 方法
具体的代码如下:
protectedoverridevoid Render(HtmlTextWriter writer)
{
System.IO.StringWriter sw =new System.IO.StringWriter();
HtmlTextWriter htmlWriter =new HtmlTextWriter(sw);
base.Render(htmlWriter);
string html = sw.ToString();
html = html.Replace("1","2");
html = html.Replace("3", "4");
writer.Write(html);
}
protectedvoid Page_Load(object sender,EventArgs e)
{
}
{
System.IO.StringWriter sw =new System.IO.StringWriter();
HtmlTextWriter htmlWriter =new HtmlTextWriter(sw);
base.Render(htmlWriter);
string html = sw.ToString();
html = html.Replace("1","2");
html = html.Replace("3", "4");
writer.Write(html);
}
protectedvoid Page_Load(object sender,EventArgs e)
{
}
虽然代码比较简单,但是能解决的问题还是蛮多的,比较实用:
1. 可以用作缓存,替代 outputcache ,在 Render 中,把页面信息放到 Cache 里面,然后再在Page_Load 里面,从缓存取出来,这样比outputcache 实用,况且可以根据用户信息定制化
2. 过滤页面html
3. .net 过滤页面html输出
4. global.asax 页面输出
5. 过滤 html
6. 替换 html
相关文章: