ASP.NET:ハンドラーからセッションにアクセスするにはどうすればよいですか?[重複]
-
21-08-2019 - |
質問
この質問にはすでに答えがあります:
私は にいくつかの値を保存しようとしています セッション から ハンドラ ページ, 、WebFormsページにリダイレクトする前に、 セッション 値を設定し、Web フォームに事前に入力します。
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
...
context.Session["StackOverflow"] = "overflowing";
context.Response.Redirect("~/AnotherPage.aspx");
...
}
...
}
を除外する context.Session
オブジェクトがnullです。
ハンドラーからセッション状態にアクセスするにはどうすればよいですか?
解決
System.Web.SessionState.IRequiresSessionState >インターフェイス
public class Handler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Session["StackOverflow"] = "overflowing";
context.Response.Redirect("~/AnotherPage.aspx");
}
}
他のヒント
実装IRequiresSessionState
は、 iRequiresSessionState にこの問題を解決を実装していますか?
どのような代わりのIHttpModuleを行うと、BeginRequestイベントをオーバーライドについてはどうですか?
public void Init(HttpApplication application)
{
application.BeginRequest += new EventHandler(context_BeginRequest);
}
所属していません StackOverflow