/// <summary> /// 获取区域 /// </summary> /// <returns>区域数组</returns> public string[] GetArea(BaseUserInfo userInfo) { var parameter = ServiceParameter.CreateWithMessage(userInfo , MethodBase.GetCurrentMethod() , this.serviceName , AppMessage.OrganizeService_GetArea); string[] result = null; ServiceUtil.ProcessUserCenterReadDb(parameter, (dbHelper) => { System.Web.Caching.Cache cache = HttpRuntime.Cache; string cacheObject = "OrganizeArea"; if (cache == null || cache[cacheObject] == null) { lock (locker) { if (cache == null || cache[cacheObject] == null) { var manager = new BaseOrganizeManager(dbHelper, userInfo); result = manager.GetArea(); cache.Add(cacheObject, result, null, DateTime.Now.AddHours(8), TimeSpan.Zero, CacheItemPriority.Normal, null); } } } result = cache[cacheObject] as string[]; }); return(result); }