123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
-
- using System;
- using System.Threading.Tasks;
- namespace Admin.Core.Common.Cache
- {
- /// <summary>
- /// 缓存接口
- /// </summary>
- public interface ICache
- {
- /// <summary>
- /// 用于在 key 存在时删除 key
- /// </summary>
- /// <param name="key">键</param>
- long Del(params string[] key);
- /// <summary>
- /// 用于在 key 存在时删除 key
- /// </summary>
- /// <param name="key">键</param>
- /// <returns></returns>
- Task<long> DelAsync(params string[] key);
- /// <summary>
- /// 用于在 key 模板存在时删除
- /// </summary>
- /// <param name="pattern">key模板</param>
- /// <returns></returns>
- Task<long> DelByPatternAsync(string pattern);
- /// <summary>
- /// 检查给定 key 是否存在
- /// </summary>
- /// <param name="key">键</param>
- /// <returns></returns>
- bool Exists(string key);
- /// <summary>
- /// 检查给定 key 是否存在
- /// </summary>
- /// <param name="key">键</param>
- /// <returns></returns>
- Task<bool> ExistsAsync(string key);
- /// <summary>
- /// 获取指定 key 的值
- /// </summary>
- /// <param name="key">键</param>
- /// <returns></returns>
- string Get(string key);
- /// <summary>
- /// 获取指定 key 的值
- /// </summary>
- /// <typeparam name="T">byte[] 或其他类型</typeparam>
- /// <param name="key">键</param>
- /// <returns></returns>
- T Get<T>(string key);
- /// <summary>
- /// 获取指定 key 的值
- /// </summary>
- /// <param name="key">键</param>
- /// <returns></returns>
- Task<string> GetAsync(string key);
- /// <summary>
- /// 获取指定 key 的值
- /// </summary>
- /// <typeparam name="T">byte[] 或其他类型</typeparam>
- /// <param name="key">键</param>
- /// <returns></returns>
- Task<T> GetAsync<T>(string key);
- /// <summary>
- /// 设置指定 key 的值,所有写入参数object都支持string | byte[] | 数值 | 对象
- /// </summary>
- /// <param name="key">键</param>
- /// <param name="value">值</param>
- bool Set(string key, object value);
- /// <summary>
- /// 设置指定 key 的值,所有写入参数object都支持string | byte[] | 数值 | 对象
- /// </summary>
- /// <param name="key">键</param>
- /// <param name="value">值</param>
- /// <param name="expire">有效期</param>
- bool Set(string key, object value, TimeSpan expire);
- /// <summary>
- /// 设置指定 key 的值,所有写入参数object都支持string | byte[] | 数值 | 对象
- /// </summary>
- /// <param name="key">键</param>
- /// <param name="value">值</param>
- /// <returns></returns>
- Task<bool> SetAsync(string key, object value);
- /// <summary>
- /// 设置指定 key 的值,所有写入参数object都支持string | byte[] | 数值 | 对象
- /// </summary>
- /// <param name="key">键</param>
- /// <param name="value">值</param>
- /// <param name="expire">有效期</param>
- /// <returns></returns>
- Task<bool> SetAsync(string key, object value, TimeSpan expire);
- }
- }
|