Example #1
0
        /// <summary>
        /// 添加一个缓存,自动从服务器获取,只用于大数据的增量更新缓存,商品信息、客户信息等
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="method">从服务器获取对象的方法</param>
        /// <returns>存在则返回缓存,不存在则返回服务器对象</returns>
        public static void AddBigAuto <T>(GetDataByTimeMethods method)
        {
            string name = typeof(T).Name;

            if (!BigCacheUpdateTime.Contains(name))
            {
                BigCacheUpdateTime.Add(name, DateTime.Now);                                    //加入更新时间
            }
            var obj = method(GetLastUpdateTime(name));

            AddBig <T>(obj);
        }
Example #2
0
        /// <summary>
        /// 获取一个对象,自动从缓存服务器获取,只用于大数据的增量更新缓存,商品信息、客户信息等
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="method">从服务器获取对象的方法</param>
        /// <returns>存在则返回缓存,不存在则返回服务器对象</returns>
        public static IList <T> GetBigAuto <T>(GetDataByTimeMethods method)
        {
            string name = typeof(T).Name;

            if (!BigCacheUpdateTime.Contains(name))
            {
                BigCacheUpdateTime.Add(name, DateTime.Now);                                    //加入更新时间
            }
            if (BigContains(name))
            {
                return(BigCache[name] as IList <T>);
            }
            var obj = method(GetLastUpdateTime(name));

            AddBig <T>(obj);
            return(obj as IList <T>);
        }
Example #3
0
        /// <summary>
        /// 获取增量更新,自动从服务器获取并更新到缓存,只用于大数据的增量更新缓存,商品信息、客户信息等
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="method">从服务器获取对象的方法</param>
        /// <returns>存在则返回缓存,不存在则返回服务器对象</returns>
        public static IList <T> GetBigIncrementUpdate <T>(GetDataByTimeMethods method)
        {
            string name = typeof(T).Name;

            if (!BigCacheUpdateTime.Contains(name))
            {
                BigCacheUpdateTime.Add(name, DateTime.Now);                                    //加入更新时间
            }
            else
            {
                BigCacheUpdateTime[name] = DateTime.Now;
            }

            var obj = method(GetLastUpdateTime(name));

            BigCacheLastUpdateTime[name] = BigCacheUpdateTime[name];//更新最后更新时间
            return(obj as IList <T>);
        }
Example #4
0
 public static void Test <T>(GetDataByTimeMethods k)
 {
 }