/// <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); }
/// <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>); }
/// <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>); }
public static void Test <T>(GetDataByTimeMethods k) { }