c# - 如何确保不从 asp.net 中的特定文件调用 http 模块

标签 c# asp.net

我有一个网站,下面有 5 个文件

  1. test1.aspx
  2. test2.aspx
  3. test3.aspx
  4. test4.aspx
  5. 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/

相关文章:

C# 使用 RegEx 和字典替换 "Whole words only"

c# - 将引用类型从一个C#复制到另一个C#

c# - 通过其容器的 get 访问器通过 set 访问器为属性赋值是一件坏事吗?

C# 如何将四元数转换为欧拉角 (XYZ)

javascript - 如何避免网站中的自定义/服务器错误?

c# - 编译时和运行时?

c# - XSLT,将所有负节点和所有节点求和为绝对值

javascript - 使用 JavaScript 在同一 GridView 中启用或禁用复选框更改事件上的文本框

c# - 为什么 LINQ Sum() 抛出 "System.Collections.Generic.KeyNotFoundException"?

php - 使用无扩展名 URL 的优点是什么?