在一个Comm类中,定义一个变量,如下
public static string _loginUsername="";
看起来是不是很熟悉,很正常——但是这样错了,坚决不能这样用
因为所有登录这个APP的用户都是用的同一个变量,张三登录时名称是张三,李四显示的是李四,当张三再引用这个变量时,发现已经不再是自己了,这下明白了没。。(我也是当用户数据出问题后才明白,嘿嘿)
那怎么办呢?已经这样做了,那么多的地方引用了这个静态字段,总不能全部改成session取值吧,能不能转换过来,办法肯定是有的,我就用了这个方法,
在原静态中改用属性 取Session中取值,如果在类中,就直接public static string _loginUsername
{
get {
new Smobiler.Core.Controls.MobileForm().Client.Session["变量名"].ToString();
}
set {}
}
改变原赋值模式,以前是静态变量=
现在要改成 Client.Session["xxx"]= 如果在类中,同理
new Smobiler.Core.Controls.MobileForm().Client.Session["变量名"]="";