using Microsoft.Extensions.Caching.Distributed;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEA_Core.Caches
{
    /// 
    /// 缓存抽象接口,基于IDistributedCache封装
    /// 
    public interface ICaching
    {
        public IDistributedCache Cache { get; }
        void AddCacheKey(string cacheKey);
        Task AddCacheKeyAsync(string cacheKey);
        void DelByPattern(string key);
        Task DelByPatternAsync(string key);
        void DelCacheKey(string cacheKey);
        Task DelCacheKeyAsync(string cacheKey);
        bool Exists(string cacheKey);
        Task ExistsAsync(string cacheKey);
        List GetAllCacheKeys();
        Task> GetAllCacheKeysAsync();
        T Get(string cacheKey);
        Task GetAsync(string cacheKey);
        object Get(Type type, string cacheKey);
        Task