|
- namespace HealthMonitor.Core.Cache
- {
- public interface IEntityCacheHandler
- {
- /// <summary>
- /// 获取缓存时间(单位秒)
- /// </summary>
- int DurableSecond { get; }
-
- /// <summary>
- /// 根据缓存键获取实体集
- /// </summary>
- /// <param name="key"></param>
- /// <returns></returns>
- IEnumerable<object>? GetEntitiesCache(string key);
-
- /// <summary>
- /// 根据缓存键更新实体
- /// </summary>
- /// <param name="key"></param>
- /// <param name="param">单实体,或者实体列表</param>
- /// <param name="isEnumerable">是否为实体列表</param>
- void SetEntityCache(string key, object param, bool isEnumerable = false);
-
- /// <summary>
- /// 清除指定缓存键的实体
- /// </summary>
- /// <param name="key"></param>
- void DeleteEntityCache(string key);
-
- /// <summary>
- /// 获取并移除指定实体主键映射的所有缓存键
- /// </summary>
- /// <param name="id"></param>
- IEnumerable<string>? UnmapKeyFromEntity(object entity);
-
- /// <summary>
- /// 清理失效(超时)的映射关系
- /// </summary>
- void CleanUpExpiredMapper();
- }
- }
|