假设我要每个页面都要判断某些的信息,我又不想每个页面都加上if(...)或者include...,就想问问asp.net有没有像jsp的Filter

解决方案 »

  1.   

    看一下IHttpModule吧。可以自定义HttpModule对请求做些处理。
    这里有篇文章。
    asp.net中HttpModule是如何工作的?附代码实例
      

  2.   

    自己写个类继承IHttpHandler接口,并实现里面的两个方法IsReusable ProcessRequest

         bool IHttpHandler.IsReusable 
        {
            get { return true; }
        }    void IHttpHandler.ProcessRequest(HttpContext context)
        {
            你的判断信息;
        }
    你调用每个页面之前,都会执行此类;配置文件:
    <httpHandlers>
          <add path="*.aspx" verb="*"  type="类名,命名空间"/>
    </httpHandlers>path:在你请求任何。aspx页面时都会调用此类
      

  3.   

    可以先看看Global.asax中的各个阶段能否满足你的要求,这些插槽已经为你设置好了。
    更灵活的也可以自己写httpHandlers.:)