所有,我正在尝试实现一个 HttpModule (IHttpModule) 来捕获页面请求并重定向到一个新页面。不幸的是,我似乎无法Session
在新页面中使用 。因为Session
是空的。
这是我的代码的样子。请审查它。
public class MyModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.BeginRequest += new EventHandler(context_BeginRequest);
}
void context_BeginRequest(object sender, EventArgs e)
{
....
HttpContext.Current.Server.Transfer("newpage.aspx");//redirect to new page.
}
}
中,代码newpage.aspx
中有一个异常说,因为是null。有人能告诉我发生了什么吗?谢谢。Object reference not set to an instance of an object
HttpContext.Current.Session[xxx]
HttpContext.Current.Session
更新
所有,我发现如果我使用HttpContext.Current.Response.Redirect
重定向 url 。一切都好。我的意思是该Session
对象在使用之前就已启动。但这不适用于Server.Transfer
.
我已经知道这两者有什么区别。