不用 Session,改用普通变量是否可以?

来源:百度知道 编辑:UC知道 时间:2024/05/29 23:39:37
Session 不但效率低,而且不是即时施放。
我想做一个Web应用程序,客户端单击提交按钮,会提交一些textbox中的数据给服务器,然后服务器将这些数据保存到数据库中。
如果只是登录状态用Session,而提交的其他数据都直接用Button_Click中定义的普通变量接收。
这样会不会导致,两个用户同时单击提交按钮,一个用户提交的数据在入库之前,被另一个用户的数据在变量中覆盖一部分?

protected void Button1_Click(object sender, EventArgs e)
{
if ("True" == Session["Login"])
{
_Name = TextBox_Name;
_Sex = TextBox_Sex;
_Age = TextBox_Age;
}
}

应该不会的。
.NET自动处理这种情况。替换是会的。时间差也就是0.几秒。
把你WEB配置文件,使用FROM验证登录。登录成功后向客户端发送一个COOKIE。可以将COOIKE保存在内存中,关闭网页后,需要重新登录。不需要把是否通过验证放入SESSION中,完全没有必要的!发送COOIKE之后,自动对所有的页面(和WEB.CONFIG同一级别的目录,如果同一目录的子文件夹不覆盖WEB.CONFIG)进行验证。现在大部分网站采用的都是这种方式。当然,安全比较高的网站,还涉及到别的技术。

因该是可以的。他们各自属于不同的请求。

设置资源占用不让同时提交就行了

恐怕不行吧,要向服务器postback的啊