Пример #1
0
 /// <summary>
 /// 获取用户表,从缓存读取
 /// </summary>
 public static List <BaseUserEntity> GetEntities()
 {
     if (HttpContext.Current.Session == null || HttpContext.Current.Cache[BaseUserEntity.TableName] == null)
     {
         lock (BaseSystemInfo.UserLock)
         {
             if (HttpContext.Current.Session == null || HttpContext.Current.Cache[BaseUserEntity.TableName] == null)
             {
                 // 读取目标表中的数据
                 List <BaseUserEntity> entityList = null;
                 BaseUserManager       manager    = new DotNet.Business.BaseUserManager(BaseUserEntity.TableName);
                 entityList = manager.GetList <BaseUserEntity>();
                 // 这个是没写过期时间的方法
                 // HttpContext.Current.Cache[tableName] = entityList;
                 // 设置过期时间为8个小时,第2天若有不正常的自动就可以正常了
                 HttpContext.Current.Cache.Add(BaseUserEntity.TableName, entityList, null, DateTime.Now.AddHours(8), TimeSpan.Zero, CacheItemPriority.Normal, null);
             }
         }
     }
     return(HttpContext.Current.Cache[BaseUserEntity.TableName] as List <BaseUserEntity>);
 }