Esempio n. 1
0
        public ICache GetCache(string cacheName, CacheDatabaseEnum cacheDatabaseType)
        {
            return(Caches.GetOrAdd(GetCacheName(cacheName, cacheDatabaseType), x =>
            {
                var cache = CreateCacheImplementation(cacheName, cacheDatabaseType);

                SetCacheExpireTimeConfig(cache);

                return cache;
            }));
        }
Esempio n. 2
0
 public RedisCache(string cacheNane, IRedisCacheDatabaseProvider redisCacheDatabaseProvider,
                   CacheDatabaseEnum cacheDatabaseType) : base(cacheNane, cacheDatabaseType)
 {
     _database  = redisCacheDatabaseProvider.GetDatabase(cacheDatabaseType);
     _cacheName = cacheNane;
 }
Esempio n. 3
0
 /// <summary>
 ///     使用指定库
 /// </summary>
 /// <param name="cacheName"></param>
 /// <param name="cacheDatabaseType"></param>
 protected CacheBase(string cacheName, CacheDatabaseEnum cacheDatabaseType)
 {
     CacheName         = cacheName;
     CacheDatabaseEnum = cacheDatabaseType;
 }
 /// <summary>
 ///     获取指定库
 /// </summary>
 /// <param name="cacheDatabaseType"></param>
 /// <returns></returns>
 public IDatabase GetDatabase(CacheDatabaseEnum cacheDatabaseType)
 {
     return(_connectionMultiplexer.GetDatabase((int)cacheDatabaseType));
 }
Esempio n. 5
0
 /// <summary>
 /// </summary>
 /// <param name="cacheName"></param>
 /// <param name="cacheDatabaseType"></param>
 /// <returns></returns>
 public abstract ICache CreateCacheImplementation(string cacheName, CacheDatabaseEnum cacheDatabaseType);
Esempio n. 6
0
 /// <summary>
 ///     获取缓存名称
 /// </summary>
 /// <param name="cacheName"></param>
 /// <param name="cacheDatabaseType"></param>
 /// <returns></returns>
 private string GetCacheName(string cacheName, CacheDatabaseEnum cacheDatabaseType)
 {
     return($"db:{cacheDatabaseType}:{cacheName}");
 }
Esempio n. 7
0
 public override ICache CreateCacheImplementation(string cacheName, CacheDatabaseEnum cacheDatabaseType)
 {
     return(new RedisCache(cacheName, _redisCacheDatabaseProvider, cacheDatabaseType));
 }