using System; using System.Collections.Generic; namespace OS.Common.Modules.CacheModule { public interface ICache { /// /// 添加缓存,已存在不更新 /// /// 添加缓存对象类型 /// 添加对象的key /// 值 /// 相对过期的TimeSpan /// 绝对过期时间 /// 缓存分区db /// 是否添加成功 bool Add(string key, T obj, TimeSpan slidingExpiration, DateTime? absoluteExpiration = null, int db = 0); /// /// 添加缓存,如果存在则更新 /// /// 添加缓存对象类型 /// 添加对象的key /// 值 /// 相对过期的TimeSpan /// 绝对过期时间 /// 缓存分区db /// 是否添加成功 bool AddOrUpdate(string key, T obj, TimeSpan slidingExpiration, DateTime? absoluteExpiration = null, int db = 0); /// /// 获取缓存对象 /// /// 获取缓存对象类型 /// key /// 缓存分区db /// 获取指定key对应的值 T Get(string key, int db=0); /// /// 获取缓存对象 /// /// 获取缓存对象类型 /// key列表 /// 缓存分区db /// 获取多个不同类型key对应的不同值 IDictionary Get(IEnumerable keys, int db=0); /// /// 移除缓存对象 /// /// /// /// 是否成功 bool Remove(string key, int db=0); /// /// 判断是否存在缓存对象 /// /// key值 /// 缓存分区db /// bool Contains(string key, int db=0); } }