protected static string id = "";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack && !IsCallback)
{
id = Request.QueryString["id"].ToString();
}
}
这里的id值,获取的时候都变成了最后一个客户端传递的值。比如同时有2个客户端(局域网内不同机器)在访问此页面,A客户端传递的id=1,B客户端随后也传递了id=2,结果A客户端的id自动变成了2,这是怎么回事啊,跪求各位大虾帮忙!!!
------解决方案--------------------------------------------------------
不要使用static
这个static 类型是所有用户共享的
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
protected string id = "";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack && !IsCallback)
{
id = Request.QueryString["id"].ToString();
viewstate["id"] = id;
}
else
{
if (viewstate["id"] != null)
id = viewstate["id"].ToString();
}
}
------解决方案--------------------------------------------------------
static静态,任何请求这个页面都会改变它的值。不是说放哪的问题。他就存一个值啊。
------解决方案--------------------------------------------------------
静态变量,在过程被执行或者调用时被赋值,后面接着被调用时不会在赋初值。