我的申请有问题。我在按钮单击事件上创建两个会话变量,然后重定向到另一个页面并执行从数据库中选择数据的方法(使用两个会话变量作为参数),然后在网格中显示结果。
一切正常,直到我有两个(或更多)用户,他们访问应用程序、设置自己的会话值、执行数据检索方法,当然他们希望看到自己的数据。
最终发生的是,两个用户都看到了相同的数据,而不是他们自己的特定数据。本质上,用户 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() 方法上发生的情况:
private void SelectData()
{
DataSet ds = Data.GetData(Session["ID"].ToString(),Session["DOB"].ToString());
gv.DataSource = ds;
gv.DataBind();
}
此外,我确实将其记录到数据库表中,并且它插入得很好,因为它显示了访问数据的人员和时间,以及正在使用的会话值。
再次感谢技术人员的帮助