随便写一个类继承IHttpModule

实现IHttpModule中的两个方法

Init()

Dispose()

        public void Init(HttpApplication context)
{
//throw new NotImplementedException();
//恰好在 ASP.NET 开始执行事件处理程序(例如,某页或某个 XML Web services)前发生。
context.PreRequestHandlerExecute += new EventHandler(Context_PreRequestHandlerExecute);
//在 ASP.NET 事件处理程序(例如,某页或某个 XML Web service)执行完毕时发生。
context.PostRequestHandlerExecute += new EventHandler(Context_PostRequestHandlerExecute); }
        //在 ASP.NET 事件处理程序(例如,某页或某个 XML Web service)执行完毕时发生。
//页面加载完成后触发
private void Context_PostRequestHandlerExecute(object sender, EventArgs e)
{
//throw new NotImplementedException();
}
//恰好在 ASP.NET 开始执行事件处理程序(例如,某页或某个 XML Web services)前发生。
//页面加载前触发
private void Context_PreRequestHandlerExecute(object sender, EventArgs e)
{
//获取到当前请求上下文
HttpContext context = ((HttpApplication)sender).Context;
var request = context.Request;
//浏览器
string browser = request.Browser.Browser;
if (string.IsNullOrEmpty(browser))
{
browser = "/home/index";
}
//绝对路径
string url = request.Url.AbsolutePath;
string host = request.Url.Host; }

然后还需要到配置文件中配置一下

在<system.webServer>这个节点下

    <modules runAllManagedModulesForAllRequests="true" >
<add name="HttpModule111" type="MVCWebCount.Common.HttpModule111" />
</modules>

或者

    <modules runAllManagedModulesForAllRequests="true" >
<add name="HttpModule111" type="MVCWebCount.Common.HttpModule111,MVCWebCount" />
</modules>

name就是自己随便写的那个类

type是这个类所在的地址,后半截是他所在的程序集

IHttpModule的更多相关文章

  1. IHttpModule生命周期

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...

  2. asp.net实现IHttpModule接口注意事项

    IHttpModule向实现类提供模块初始化和处置事件. IHttpModule包含兩個方法: public void Init(HttpApplication context);public voi ...

  3. 关于IHttpModule的相关知识总结

    一.IHttpModule相关概述 using System; namespace System.Web { public interface IHttpModule { // 销毁不再被HttpMo ...

  4. .net学习之母版页执行顺序、jsonp跨域请求原理、IsPostBack原理、服务器端控件按钮Button点击时的过程、缓存、IHttpModule 过滤器

    1.WebForm使用母版页后执行的顺序是先执行子页面中的Page_Load,再执行母版页中的Page_Load,请求是先生成母版页的控件树,然后将子页面生成的控件树填充到母版页中,最后输出 2.We ...

  5. IHttpModule在webconfig中的注册

    在asp.net中,提供了两种方式用来解决获取由asp.net服务器创建和维护的HttpApplication对象,方便注册HttpApplication对象的事件处理.这两种方式为:IHtpModu ...

  6. 【IHttpHandler】IHttpModule实现URL重写

    1.用自定义IHttpModule实现URL重写 一般来说,要显示一些动态数据总是采用带参数的方式,比如制作一个UserInfo.aspx的动态页面用于显示系统的UserInfo这个用户信息表的数据, ...

  7. 实现IHttpModule接口,给每个页面输出一段脚本

    在App_Code文件中添加TGModule.cs using System; using System.Data; using System.Configuration; using System. ...

  8. 转 IHttpModule不起作用

    在 Visual Studio 中,测试 IHttpModule(httpModules) 正常,但是放到服务器上去就不起作用了,这多半得多服务器 IIS 配置入手. 一.看“应用程序池”的“托管管道 ...

  9. 请求管道与IHttpModule接口

    IHttpModule向实现类提供模块初始化和处置事件.  IHttpModule包含兩個方法: public void Init(HttpApplication context);public vo ...

随机推荐

  1. 安装配置hive中遇到的问题

    1. mysql中添加用户名时总出现如下问题:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables ...

  2. EF框架step by step(6)—处理实体complex属性

    上一篇的中介绍过了对于EF4.1框架中,实体的简单属性的处理 这一篇介绍一下Code First方法中,实体Complex属性的处理.Complex属性是将一个对象做为另一个对象的属性.映射到数据库中 ...

  3. Redis Java API

    package cn.ac.iscas.pebble.dc.redispool; import java.io.File; import java.io.FileOutputStream; impor ...

  4. 使用Percona Toolkit解决Mysql主从不同步问题【备忘】

    由于各种原因,mysql主从架构经常会出现数据不一致的情况出现,大致归结为如下几类 1:备库写数据 2:执行non-deterministic query 3:回滚掺杂事务表和非事务表的事务 4:bi ...

  5. Codeforces Round #216 (Div. 2)A. Valera and Plates

    #include <iostream> using namespace std; int main(){ int n, m , k; cin >> n >> m & ...

  6. [Leetcode] Interleaving String

    Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. For example,Given:s1 = ...

  7. UVA 11461 - Square Numbers(水题)

    题目链接 #include <cstdio> #include <cstring> #include <string> #include <cmath> ...

  8. PHP面向对象学习二

    类的继承和应用 继承关键字:extends class1 --extends--->class2 ----extends-->class3 依次被继承,class3拥有class1.cla ...

  9. Selenium_模拟淘宝登录Demo

    package com.lkb.start; import com.alibaba.fastjson.JSONObject; import com.lkb.bean.Entity; import co ...

  10. FLEX监视浏览器关闭事件

    在最近开发的一个FLEX项目中对于浏览器关闭时,需要做一些清理工作,该清理工作在正常情况下保证能运行就行了,要求不是太高. 因此在网上找了一些方法,经过实际测试确实可行,记录下来备查. 该方法可以完全 ...