public static UserModel UserInfo
        {            
            get
            {
                UserModel um;
                HttpSessionState session = HttpContext.Current.Session;
                if (session["UserInfo"] != null)
                {
                    try
                    {
                        um = (UserModel)session["UserInfo"];
                    }
                    catch { um = new UserModel(); }
                }
                else
                    um = new UserModel();
                return um;
            }
        }
多用户并发时会不会返回同样的东西?

解决方案 »

  1.   

    session["UserInfo"]又不是静态的 不会返回相同的东西当session["UserInfo"] == null 时 返回相同的东西new UserModel()
      

  2.   

    HttpSessionState session = HttpContext.Current.Session;
    这就不是内部变量范畴了。
    Session对象是公共的,在别的对象里都只是引用,不是实例化.
    所以这种做法不是内部变量.
      

  3.   

    那麻烦再问下,平时做对用户信息访问类的你们怎么写,我看NT!discuz里都是用static方法操作这个