aspx在页面跳转(Response.Redirect)时丢失session问题及解决办法

时间:2023-01-23 12:14:27

【问题描述】

假设a.aspx.cs页面保存有Session["empid"]="3",
当a.aspx.cs通过Response.Redirect("b.aspx")到达b.aspx页面后,b.aspx.cs获取到的Session["empid"]为null

【解决思路】
目前没有找到比较好的方法,暂时的处理方式是:
在a.aspx页面跳转到b.aspx时,将session的值传过去,b.aspx页面接收到之后将该值更新到session值里
【代码】

a.aspx.cs:某个跳转的操作中
string idValue=Convert.toString(Session["empid"]);
Response.Redirect("b.aspx?id="+idValue);

b.aspx.cs: Page_Load中
string idValue = Convert.ToString(Request.QueryString["id"]);
Session["empid"]=idValue;