代码之家  ›  专栏  ›  技术社区  ›  Ramesh

会话值引发异常

  •  -1
  • Ramesh  · 技术社区  · 7 年前

    我正在将会话值从一个页面传递到另一个页面,如下所示。。。

    从…起 Page1

    Session["k3"] = "Val3"
    Session["k4"] = "Val4"
    Response.Redirect("~/Page2.aspx");
    

    在里面 Page 2 ,我没有得到值

    public partial class Page2 : System.Web.UI.Page
    {
            string k3 = System.Web.HttpContext.Current.Session["k3"].ToString(); //Not Working.
            string k4 = System.Web.HttpContext.Current.Session["k4"].ToString(); //Not Working.
    
            protected void Page_Load(object sender, EventArgs e)
            {
    
            }
    }
    

    如果我重定向到任何其他页面,我将获得所有 Session 值来自 K3 K4

    我尝试的内容: 在…上 debugging 全部的 一场 值可用到 Response.Redirect

    全部的 一场 值可用于其他 pages 在project中,我可以通过在其他选项卡中打开其他页面来查看结果。

    我仔细核对了一下 Session.Clear() Session.Abandon() 但我没有在 Page2

    我无法理解我在这里错过了什么。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Ramesh    7 年前

    在中声明和分配 Page_Load 事件正在解决此问题。

    public partial class Page2 : System.Web.UI.Page
    {
    
            protected void Page_Load(object sender, EventArgs e)
            {
                 string k3 = System.Web.HttpContext.Current.Session["k3"].ToString(); //Not Working.
                 string k4 = System.Web.HttpContext.Current.Session["k4"].ToString(); //Not Working.
            }
    }