zoukankan      html  css  js  c++  java
  • 使用过滤器过滤asp.net mvc输出内容

    在asp.net程序的开发中,有时我们需要对输出的Html代码进行一些后续的处理。如压缩Html代码。实现的方法很简单,我们只需要扩展一个自定义的过滤器。

    首先我们创建一个将html转换成大写的过滤器:

     1 public class CapitalFilter : Stream
     2     {
     3         private Stream _responseStream;
     4 
     5         public CapitalFilter(Stream responseStream)
     6         {
     7             _responseStream = responseStream;
     8         }
     9 
    10         public override void Flush()
    11         {
    12         }
    13 
    14         public override int Read(byte[] buffer, int offset, int count)
    15         {
    16             return _responseStream.Read(buffer, offset, count);
    17         }
    18 
    19         public override void Write(byte[] buffer, int offset, int count)
    20         {
    21             string html = System.Text.UTF8Encoding.UTF8.GetString(buffer);
    22 
    23             html = html.ToUpper();
    24 
    25             buffer = System.Text.UTF8Encoding.UTF8.GetBytes(html);
    26 
    27             _responseStream.Write(buffer, offset, count);
    28         }
    29     }

    因为Response.Filter是一个使用装饰着模式的输出过滤器,所以只需要添加如下代码:

    Response.Filter = new CapitalFilter(Response.Filter);
  • 相关阅读:
    棋盘问题 POJ
    Fire! UVA
    走迷宫(bfs, 最短路)
    ASP-Command-SQL格式
    ASP连接数据库SQLServer
    Bootstrap学习-导航条-分页导航
    Bootstrap导航栏头部错位问题
    SQLServer判断一个IP是否在一个IP段里
    MySQL合并多行
    CSS图片居中,多余隐藏
  • 原文地址:https://www.cnblogs.com/hyl8218/p/2553233.html
Copyright © 2011-2022 走看看