Exemplo n.º 1
0
        //private static readonly int ernieTimeout = 0;

        public static IList <ErnieAllInfo> GetLatest()
        {
            Ernie bll = new Ernie();

            if (!enableCaching)
            {
                return(bll.GetLatest());
            }

            string key = "ernie_latest";
            IList <ErnieAllInfo> data = (IList <ErnieAllInfo>)HttpRuntime.Cache[key];

            if (data == null)
            {
                double timeOut = 0;
                data = bll.GetLatest();
                if (data.Count > 0)
                {
                    var model = data[0];
                    timeOut = (int)(model.EndTime - model.StartTime).TotalMilliseconds;
                }

                AggregateCacheDependency cd = DependencyFacade.GetErnieDependency();
                HttpRuntime.Cache.Add(key, data, cd, DateTime.Now.AddMilliseconds(timeOut), Cache.NoSlidingExpiration, CacheItemPriority.High, null);
            }

            return(data);
        }