【问题标题】:Why can't I get the Page.Title within an httpModule?为什么我无法在 httpModule 中获取 Page.Title?
【发布时间】:2014-08-27 18:41:30
【问题描述】:

我正在跟踪 ASP.net 网络表单应用程序中的页面标题。下面的代码有效,但是 page.Title 总是抛出 System.NullReferenceException,即使我正在跟踪的页面有标题。为什么?

public class TrackingModule : IHttpModule
{
    public void Init(HttpApplication application)
    {
        application.PostAcquireRequestState += new EventHandler(Application_PostAcquireRequestState);
    }

    void Application_PostAcquireRequestState(object source, EventArgs e)
    {
        if (HttpContext.Current.Handler is Page && HttpContext.Current.Session != null)
        {
            Page page = (Page)HttpContext.Current.Handler;

            Log(page.Title);
        }
    }
}

【问题讨论】:

  • 你可能做得太早了。
  • 你从哪里得到异常?

标签: c# asp.net httpmodule


【解决方案1】:

我只能看到页面变量未初始化。 HttpContext.Current.Handler 实际上是否包含内存地址或值?如果它给你一个 System.NullReferenceException 那么它就是 - Title,或者调用 Title 的东西是 null。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-24
    • 2020-04-12
    • 2022-08-24
    • 2014-03-09
    • 2020-06-26
    • 2019-04-03
    • 1970-01-01
    • 2020-04-18
    相关资源
    最近更新 更多