IHttpModule
随便写一个类继承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的更多相关文章
- IHttpModule生命周期
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...
- asp.net实现IHttpModule接口注意事项
IHttpModule向实现类提供模块初始化和处置事件. IHttpModule包含兩個方法: public void Init(HttpApplication context);public voi ...
- 关于IHttpModule的相关知识总结
一.IHttpModule相关概述 using System; namespace System.Web { public interface IHttpModule { // 销毁不再被HttpMo ...
- .net学习之母版页执行顺序、jsonp跨域请求原理、IsPostBack原理、服务器端控件按钮Button点击时的过程、缓存、IHttpModule 过滤器
1.WebForm使用母版页后执行的顺序是先执行子页面中的Page_Load,再执行母版页中的Page_Load,请求是先生成母版页的控件树,然后将子页面生成的控件树填充到母版页中,最后输出 2.We ...
- IHttpModule在webconfig中的注册
在asp.net中,提供了两种方式用来解决获取由asp.net服务器创建和维护的HttpApplication对象,方便注册HttpApplication对象的事件处理.这两种方式为:IHtpModu ...
- 【IHttpHandler】IHttpModule实现URL重写
1.用自定义IHttpModule实现URL重写 一般来说,要显示一些动态数据总是采用带参数的方式,比如制作一个UserInfo.aspx的动态页面用于显示系统的UserInfo这个用户信息表的数据, ...
- 实现IHttpModule接口,给每个页面输出一段脚本
在App_Code文件中添加TGModule.cs using System; using System.Data; using System.Configuration; using System. ...
- 转 IHttpModule不起作用
在 Visual Studio 中,测试 IHttpModule(httpModules) 正常,但是放到服务器上去就不起作用了,这多半得多服务器 IIS 配置入手. 一.看“应用程序池”的“托管管道 ...
- 请求管道与IHttpModule接口
IHttpModule向实现类提供模块初始化和处置事件. IHttpModule包含兩個方法: public void Init(HttpApplication context);public vo ...
随机推荐
- HowTo:使用数据流读写消息
本文主要演示使用TPL 数据流库从数据流块(dataflow block)读写消息. 提供了同步方法和异步方法. 主要使用BufferBlock,其既能作为message source,有能作为m ...
- CodeForces#275--DIV 2--A
A. Counterexample time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- Storm系统高可用性HA表现
关于Storm的高可用,有以下几个方面: (1)数据利用阶段可以通过ACK机制保证数据被处理: (2)在进程级别,worker失效,supervisor会自动重启worker线程; (3)在组件级别, ...
- 30秒修复Ubuntu菱形乱码问题
将语言改为英文,我是按照第三种方式进行的,成功.参考博客: http://blog.sina.com.cn/s/blog_a126a955010180b8.html
- 【BZOJ】3621: 我想那还真是令人高兴啊
http://www.lydsy.com/JudgeOnline/problem.php?id=3621 题意:给两个三角形,问A能否通过旋转伸缩到B. #include <bits/stdc+ ...
- Android -- 动画效果收获(1)
加载选项菜单 MenuInflater inflater = getMenuInflater(); inflater.inflater(R.menu.menu,menu); An ...
- lsof用法简介
lsof:一个功能强大的命令 lsof命令的原始功能是列出打开的文件的进程,但LINUX下,所有的设备都是以文件的行式存在的,所以,lsof的功能很强大! [root@limt01 ~]# lsof ...
- GO语言练习:map基本用法
1.代码 2.运行 1.代码 文件:map.go package main import "fmt" type PersionInfo struct{ ID string Name ...
- javascrit2.0完全参考手册(第二版) 第1章第1节 在XHTML文档中增加javascript
通常,向文档中增加script脚本使用<script>元素,在HTML中增加脚本的方式有4中: (1)放到<script></script>块中: (2)<s ...
- php链接数据库
1:找到 ySQL服务器 $conn = mysql_connect("localhost","","") or die("链 ...