모두 요청을 캐치하고 새 페이지로 리디렉션하기 위해 HttpModule (IHttpModule)을 구현하려고합니다. 죄송 합니다만 새 페이지에서 Session
을 사용할 수없는 것 같습니다. Session
이 null이기 때문에HttpModule에서 요청을 전송할 때 새 페이지에서 세션이 null입니다.
내 코드는 다음과 같습니다. 검토해주십시오. HttpContext.Current.Session
가 null이기 때문에 newpage.aspx
에서
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.
}
}
는 예외 코드 HttpContext.Current.Session[xxx]
에 대한 Object reference not set to an instance of an object
말한다 있습니다. 누군가 어떤 일이 일어 났는지 말해 줄 수 있습니까? 감사합니다. . 내가 URL을 리디렉션 할 HttpContext.Current.Response.Redirect
를 사용하는 경우
모든
업데이트, 나는 발견했다. 모든 것은 괜찮습니다. 제 말은 Session
개체가 사용되기 전에 시작된다는 것입니다.하지만 Server.Transfer
에는 작동하지 않습니다.
나는 이미 이들의 차이점을 알고 있습니다. two.
첫 번째 및 두 번째 페이지의 URL을 표시 할 수 있습니까? 아마 다른 프로토콜에 대한 별도의 도메인으로 갈 수 있습니다. – Peter
@peer 두 앱 모두 같은 앱에 있습니다. url은'http : // localhost : 7778/orginalpage.aspx'에서'http : // localhost : 7778/b/c/newpage.aspx'로 리디렉션됩니다. 감사. –