using System; using System.Collections.Generic; namespace Learun.Cache.Base { /// /// 版 本 Learun-ADMS V7.0.3 力软敏捷开发框架 /// Copyright (c) 2013-2018 上海力软信息技术有限公司 /// 创建人:力软-框架开发组 /// 日 期:2017.03.06 /// 描 述:定义缓存接口 /// public interface ICache { #region Key-Value /// /// 读取缓存 /// /// 键 /// 缓存库编码 /// T Read(string cacheKey, int dbId = 0) where T : class; /// /// 写入缓存 /// /// 对象数据 /// 键 /// 缓存库编码 void Write(string cacheKey, T value, int dbId = 0) where T : class; /// /// 写入缓存 /// /// 对象数据 /// 键 /// 缓存库编码 /// 到期时间 void Write(string cacheKey, T value, TimeSpan timeSpan, int dbId = 0) where T : class; /// /// 移除指定数据缓存 /// /// 键 /// 缓存库编码 void Remove(string cacheKey, int dbId = 0); /// /// 移除全部缓存 /// /// 缓存库编码 void RemoveAll(int dbId = 0); #endregion #region List #region 同步方法 /// /// 移除指定ListId的内部List的值 /// /// /// /// 缓存库编码 void ListRemove(string cacheKey, T value, int dbId = 0) where T : class; /// /// 获取指定key的List /// /// /// 缓存库编码 /// List ListRange(string cacheKey, int dbId = 0) where T : class; /// /// 入队 /// /// /// /// 缓存库编码 void ListRightPush(string cacheKey, T value, int dbId = 0) where T : class; /// /// 出队 /// /// /// /// 缓存库编码 /// T ListRightPop(string cacheKey, int dbId = 0) where T : class; /// /// 入栈 /// /// /// /// /// 缓存库编码 void ListLeftPush(string cacheKey, T value, int dbId = 0) where T : class; /// /// 出栈 /// /// /// /// 缓存库编码 /// T ListLeftPop(string cacheKey, int dbId = 0) where T : class; /// /// 获取集合中的数量 /// /// /// 缓存库编码 /// long ListLength(string cacheKey, int dbId = 0); #endregion 同步方法 #endregion List } }