日期:2014-05-18  浏览次数:20464 次

登录的用户信息可不可以存在静态字段里面?
大家做网站都怎么存储用户信息?
以前用session,总是丢失,后来用cookie了,有没有其他的好方法?

B/S系统可不可以用静态类,或者类里面的静态字段存储用户信息?

我登录是用FormsAuthenticationTicket做的,用户信息生成JSON存在参数UserData里面。我为了读取的时候省事儿,写了个UserInfo类,里面的多个静态成员调用方法获取相应信息,用的时候像UserInfo.NickName这样。这样做会有什么问题?

C# code
public class UserInfo
{
    public static string NickName
    {
        get
        {
            // 获取验证票里面的 UserData,根据参数返回值。
            return GetData("nickname");
        }
        set { }
    }
}


------解决方案--------------------
你的概念不清。Session、Cookie和什么静态类根本就没有可比性。
------解决方案--------------------
决对不可以,楼主先把相应的概念搞清楚吧,比如说静态变量的使用,在BS结构中跟CS结构中是不同的,也跟FLEX中概念有一些不同
------解决方案--------------------
Page.Identity.User.Name中的账号是不会变的,用它吧
------解决方案--------------------
静态 每个后面的人都会把前面的人信息顶掉。
也就是说,你网站同时10000人在线,那他们同一时间取得的nickname是相同的。
------解决方案--------------------
探讨

静态 每个后面的人都会把前面的人信息顶掉。
也就是说,你网站同时10000人在线,那他们同一时间取得的nickname是相同的。

------解决方案--------------------
用FORM表单验证就行了,