asp.net会话变量覆盖

时间:2014-01-27 17:24:59

标签: asp.net

我的asp.net应用程序中有这个代码,按下按钮后会创建带有整数值的会话变量并重定向到不同的页面。 ID变量是mysql数据库ID列中使用不同方法检索它的最大数量。

int ID;

protected void Submit_Click(object sender, EventArgs e)
    { 
        ID=ID+1
        Session["ID"]=ID; 
        Response.Redirect("~/NextPage.aspx");
    }

如果两个不同的用户按此按钮会怎样?我的意思是像id = 5的第一个用户按下按钮,1秒后第二个用户按下此按钮,id = 6。第一个用户是否可以获得ID = 5或变量ID = 6?

用户使用不同的PC ......

1 个答案:

答案 0 :(得分:0)

会话是基于用户的。有关更多信息,请参阅MSDN

所以在你的情况下,没有问题:第一个用户将获得ID=5,第二个用户获得自己增加的ID。如果您的数据库MAX(id)在两个用户请求之间没有变化,则两个用户将在其会话中收到相同的ID。