请问,一个类的属性在get访问器里实现的逻辑是从session里读取值,那么这个属性适合写成静态的吗?

解决方案 »

  1.   

    不适合,Session对每个登陆用户而异。
      

  2.   

    从数据的角度,同意楼上的观点,
    但是从操作角度讲,是可以的,登陆用户不同,只是数据不同而已,不影响把其作为一个静态的属性.只是要考虑到Session超时所带来的数据为空问题。
      

  3.   

    为何要用属性取SESSION,我一般都是直接使用SESSION,很方便。
      

  4.   

    能设成静态的, 那session==application了
      

  5.   

    其实我也同意楼上的观点,是没有必要设成静态的.OrangeSeaCoast
    :用属性和用方法一样的,方法要写两个,属性的话,可以一起写了
      

  6.   

    建议不要那样做,session的值本身就是动态的,你不可能让他一成不变,如果使用静态的方法获取session值那岂不是变得没有意义了?
      

  7.   

    一个网站如果 Session使用的比较多的化就很应该管理起来 
    一个最简单而且有效的方法就是利用一个类来管理 我简单写一下public class SessionManager
        {
            // 缓存登录用户
            protected const string UserName= "UserName";
            public string UserName
            {
                 get
                {
                    return HttpContext.Current.Session[UserName].ToString();
                }
                set
                {
                    HttpContext.Current.Session[UserName] = value;
                }
            }
      

  8.   

    public class SessionManager
        {
            // 缓存登录用户
            protected const string UserName= "UserName";
            public static string UserName
            {
                 get
                {
                    return HttpContext.Current.Session[UserName].ToString();
                }
                set
                {
                    HttpContext.Current.Session[UserName] = value;
                }
            }用的时候 SessionManager.UserName
      

  9.   

    可以
    静态属性不是静态字段,属性相当于方法,不等于application