我有一个网站,下面有 5 个文件
- test1.aspx
- test2.aspx
- test3.aspx
- test4.aspx
- test5.aspx
我有一个在所有页面中调用的 http 模块 但我有一个条件,在 test5.aspx 页面上我不希望调用 http 模块需要完成哪些设置才能解决问题?
最佳答案
HttpModules 在您的页面生命周期之前运行,因此您必须在请求路径上匹配它。
假设您的 HttpModule 的 Init
函数设置了一个 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
}
}
关于c# - 如何确保不从 asp.net 中的特定文件调用 http 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15492029/