Session 会话变量不工作
我的申请有问题。我在一个按钮点击事件上创建了两个会话变量,然后重新定向到另一个页面并执行一个从数据库中选择数据的方法(使用这两个会话变量作为参数),然后在网格中显示结果 在我有两个(或更多)用户访问应用程序、设置自己的会话值、执行数据检索方法之前,所有这些都可以正常工作,当然,他们希望看到自己的数据 最终,两个用户看到的是相同的数据,而不是他们自己的特定数据。本质上,用户A很好地看到了他的数据,但用户B最终看到的是用户A的数据,而不是他自己的数据 注意:这仅在他们尝试每隔20秒访问其特定数据时发生 以下是我的代码示例:Session 会话变量不工作,session,session-variables,Session,Session Variables,我的申请有问题。我在一个按钮点击事件上创建了两个会话变量,然后重新定向到另一个页面并执行一个从数据库中选择数据的方法(使用这两个会话变量作为参数),然后在网格中显示结果 在我有两个(或更多)用户访问应用程序、设置自己的会话值、执行数据检索方法之前,所有这些都可以正常工作,当然,他们希望看到自己的数据 最终,两个用户看到的是相同的数据,而不是他们自己的特定数据。本质上,用户A很好地看到了他的数据,但用户B最终看到的是用户A的数据,而不是他自己的数据 注意:这仅在他们尝试每隔20秒访问其特定数据时发
//The user control that sets the session variables and redirects
Session.Clear();
Session.["ID"] = TxtPatientIDCode.Text.ToString());
Session["DOB"] = Convert.ToDateTime(TxtDateOfBirth.SelectedDate.Value.ToShortDateString());
Response.Redirect("mypage");
// the user control that gets the session variable values and executes //the data method
if (Session["ID"].ToString() != null)
{
SelectData();
}
安顿
这是SelectData()方法上发生的情况:
我也把它记录到了一个数据库表中,它插入得很好,因为它显示了访问数据的人和时间,以及正在使用的会话值
再次感谢你的帮助
technooblet显示SelectData()中发生的情况。另外。。。尝试记录会话[“ID”]中的内容,看看它是否是您期望的内容。此外,我的web.config上有sessionstate部分,用于执行15分钟的超时,cookieless=“false”当您在使用之前记录会话[“ID”]是什么时会发生什么?没有,会话[“ID”]只是插入到日志表中,会话仍然保留以获取数据。在数据返回到gridview后,会话将被清除。
private void SelectData()
{
DataSet ds = Data.GetData(Session["ID"].ToString(),Session["DOB"].ToString());
gv.DataSource = ds;
gv.DataBind();
}