我有一个网站,下面有 5 个文件
- 测试1.aspx
- 测试2.aspx
- 测试3.aspx
- 测试4.aspx
- 测试5.aspx
我有一个在所有页面中都被调用的 http 模块,但是我有一个条件,在 test5.aspx 页面上我不希望调用 http 模块需要进行哪些设置才能解决问题?
HttpModules 在您的页面生命周期之前运行,因此您必须在请求路径上匹配它。
假设您的 HttpModuleInit
函数设置了一个BeforeRequest
处理程序,例如:
public class MyModule : IHttpModule
{
public void Init(HttpApplication application)
{
application.BeginRequest += this.BeginRequest;
}
public void BeginRequest(object sender, EventArgs e)
{
var app = sender as HttpApplication;
if (app.Request.Path.Contains("test5.aspx")) {
return;
}
// Process logic for other pages here
}
}