为什么我不能在httpModule中获得Page.Title?

时间:2014-08-27 18:41:30

标签: c# asp.net httpmodule

我正在跟踪ASP.net webforms应用程序中的页面标题。但是下面的代码可以运行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);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

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