Show / Hide Table of Contents

Class DistributedCache<TCacheItem, TCacheKey>

Inheritance
object
DistributedCache<TCacheItem, TCacheKey>
Implements
IDistributedCache<TCacheItem, TCacheKey>
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Volo.Abp.Caching
Assembly: Volo.Abp.Caching.dll
Syntax
public class DistributedCache<TCacheItem, TCacheKey> : IDistributedCache<TCacheItem, TCacheKey> where TCacheItem : class where TCacheKey : notnull
Type Parameters
Name Description
TCacheItem
TCacheKey

Constructors

DistributedCache(IOptions<AbpDistributedCacheOptions>, IDistributedCache, ICancellationTokenProvider, IDistributedCacheSerializer, IDistributedCacheKeyNormalizer, IServiceScopeFactory, IUnitOfWorkManager)

Declaration
public DistributedCache(IOptions<AbpDistributedCacheOptions> distributedCacheOption, IDistributedCache cache, ICancellationTokenProvider cancellationTokenProvider, IDistributedCacheSerializer serializer, IDistributedCacheKeyNormalizer keyNormalizer, IServiceScopeFactory serviceScopeFactory, IUnitOfWorkManager unitOfWorkManager)
Parameters
Type Name Description
IOptions<AbpDistributedCacheOptions> distributedCacheOption
IDistributedCache cache
ICancellationTokenProvider cancellationTokenProvider
IDistributedCacheSerializer serializer
IDistributedCacheKeyNormalizer keyNormalizer
IServiceScopeFactory serviceScopeFactory
IUnitOfWorkManager unitOfWorkManager

Fields

DefaultCacheOptions

Declaration
protected DistributedCacheEntryOptions DefaultCacheOptions
Field Value
Type Description
DistributedCacheEntryOptions

UowCacheName

Declaration
public const string UowCacheName = "AbpDistributedCache"
Field Value
Type Description
string

Properties

Cache

Declaration
protected IDistributedCache Cache { get; }
Property Value
Type Description
IDistributedCache

CacheName

Declaration
protected string CacheName { get; set; }
Property Value
Type Description
string

CancellationTokenProvider

Declaration
protected ICancellationTokenProvider CancellationTokenProvider { get; }
Property Value
Type Description
ICancellationTokenProvider

IgnoreMultiTenancy

Declaration
protected bool IgnoreMultiTenancy { get; set; }
Property Value
Type Description
bool

KeyNormalizer

Declaration
protected IDistributedCacheKeyNormalizer KeyNormalizer { get; }
Property Value
Type Description
IDistributedCacheKeyNormalizer

Logger

Declaration
public ILogger<DistributedCache<TCacheItem, TCacheKey>> Logger { get; set; }
Property Value
Type Description
ILogger<DistributedCache<TCacheItem, TCacheKey>>

Serializer

Declaration
protected IDistributedCacheSerializer Serializer { get; }
Property Value
Type Description
IDistributedCacheSerializer

ServiceScopeFactory

Declaration
protected IServiceScopeFactory ServiceScopeFactory { get; }
Property Value
Type Description
IServiceScopeFactory

SyncSemaphore

Declaration
protected SemaphoreSlim SyncSemaphore { get; }
Property Value
Type Description
SemaphoreSlim

UnitOfWorkManager

Declaration
protected IUnitOfWorkManager UnitOfWorkManager { get; }
Property Value
Type Description
IUnitOfWorkManager

Methods

Get(TCacheKey, bool?, bool)

Declaration
public virtual TCacheItem? Get(TCacheKey key, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors
bool considerUow
Returns
Type Description
TCacheItem

GetAsync(TCacheKey, bool?, bool, CancellationToken)

Declaration
public virtual Task<TCacheItem?> GetAsync(TCacheKey key, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task<TCacheItem>

GetDefaultCacheEntryOptions()

Declaration
protected virtual DistributedCacheEntryOptions GetDefaultCacheEntryOptions()
Returns
Type Description
DistributedCacheEntryOptions

GetMany(IEnumerable<TCacheKey>, bool?, bool)

Declaration
public virtual KeyValuePair<TCacheKey, TCacheItem?>[] GetMany(IEnumerable<TCacheKey> keys, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors
bool considerUow
Returns
Type Description
KeyValuePair<TCacheKey, TCacheItem>[]

GetManyAsync(IEnumerable<TCacheKey>, bool?, bool, CancellationToken)

Declaration
public virtual Task<KeyValuePair<TCacheKey, TCacheItem?>[]> GetManyAsync(IEnumerable<TCacheKey> keys, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task<KeyValuePair<TCacheKey, TCacheItem>[]>

GetManyFallback(TCacheKey[], bool?, bool)

Declaration
protected virtual KeyValuePair<TCacheKey, TCacheItem?>[] GetManyFallback(TCacheKey[] keys, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
TCacheKey[] keys
bool? hideErrors
bool considerUow
Returns
Type Description
KeyValuePair<TCacheKey, TCacheItem>[]

GetManyFallbackAsync(TCacheKey[], bool?, bool, CancellationToken)

Declaration
protected virtual Task<KeyValuePair<TCacheKey, TCacheItem?>[]> GetManyFallbackAsync(TCacheKey[] keys, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey[] keys
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task<KeyValuePair<TCacheKey, TCacheItem>[]>

GetOrAdd(TCacheKey, Func<TCacheItem>, Func<DistributedCacheEntryOptions>?, bool?, bool)

Declaration
public virtual TCacheItem? GetOrAdd(TCacheKey key, Func<TCacheItem> factory, Func<DistributedCacheEntryOptions>? optionsFactory = null, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
TCacheKey key
Func<TCacheItem> factory
Func<DistributedCacheEntryOptions> optionsFactory
bool? hideErrors
bool considerUow
Returns
Type Description
TCacheItem

GetOrAddAsync(TCacheKey, Func<Task<TCacheItem>>, Func<DistributedCacheEntryOptions>?, bool?, bool, CancellationToken)

Declaration
public virtual Task<TCacheItem?> GetOrAddAsync(TCacheKey key, Func<Task<TCacheItem>> factory, Func<DistributedCacheEntryOptions>? optionsFactory = null, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey key
Func<Task<TCacheItem>> factory
Func<DistributedCacheEntryOptions> optionsFactory
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task<TCacheItem>

GetOrAddMany(IEnumerable<TCacheKey>, Func<IEnumerable<TCacheKey>, List<KeyValuePair<TCacheKey, TCacheItem>>>, Func<DistributedCacheEntryOptions>?, bool?, bool)

Declaration
public KeyValuePair<TCacheKey, TCacheItem?>[] GetOrAddMany(IEnumerable<TCacheKey> keys, Func<IEnumerable<TCacheKey>, List<KeyValuePair<TCacheKey, TCacheItem>>> factory, Func<DistributedCacheEntryOptions>? optionsFactory = null, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
Func<IEnumerable<TCacheKey>, List<KeyValuePair<TCacheKey, TCacheItem>>> factory
Func<DistributedCacheEntryOptions> optionsFactory
bool? hideErrors
bool considerUow
Returns
Type Description
KeyValuePair<TCacheKey, TCacheItem>[]

GetOrAddManyAsync(IEnumerable<TCacheKey>, Func<IEnumerable<TCacheKey>, Task<List<KeyValuePair<TCacheKey, TCacheItem>>>>, Func<DistributedCacheEntryOptions>?, bool?, bool, CancellationToken)

Declaration
public Task<KeyValuePair<TCacheKey, TCacheItem?>[]> GetOrAddManyAsync(IEnumerable<TCacheKey> keys, Func<IEnumerable<TCacheKey>, Task<List<KeyValuePair<TCacheKey, TCacheItem>>>> factory, Func<DistributedCacheEntryOptions>? optionsFactory = null, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
Func<IEnumerable<TCacheKey>, Task<List<KeyValuePair<TCacheKey, TCacheItem>>>> factory
Func<DistributedCacheEntryOptions> optionsFactory
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task<KeyValuePair<TCacheKey, TCacheItem>[]>

GetUnitOfWorkCache()

Declaration
protected virtual Dictionary<TCacheKey, UnitOfWorkCacheItem<TCacheItem>> GetUnitOfWorkCache()
Returns
Type Description
Dictionary<TCacheKey, UnitOfWorkCacheItem<TCacheItem>>

GetUnitOfWorkCacheKey()

Declaration
protected virtual string GetUnitOfWorkCacheKey()
Returns
Type Description
string

HandleException(Exception)

Declaration
protected virtual void HandleException(Exception ex)
Parameters
Type Name Description
Exception ex

HandleExceptionAsync(Exception)

Declaration
protected virtual Task HandleExceptionAsync(Exception ex)
Parameters
Type Name Description
Exception ex
Returns
Type Description
Task

NormalizeKey(TCacheKey)

Declaration
protected virtual string NormalizeKey(TCacheKey key)
Parameters
Type Name Description
TCacheKey key
Returns
Type Description
string

Refresh(TCacheKey, bool?)

Declaration
public virtual void Refresh(TCacheKey key, bool? hideErrors = null)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors

RefreshAsync(TCacheKey, bool?, CancellationToken)

Declaration
public virtual Task RefreshAsync(TCacheKey key, bool? hideErrors = null, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors
CancellationToken token
Returns
Type Description
Task

RefreshMany(IEnumerable<TCacheKey>, bool?)

Declaration
public virtual void RefreshMany(IEnumerable<TCacheKey> keys, bool? hideErrors = null)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors

RefreshManyAsync(IEnumerable<TCacheKey>, bool?, CancellationToken)

Declaration
public virtual Task RefreshManyAsync(IEnumerable<TCacheKey> keys, bool? hideErrors = null, CancellationToken token = default)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors
CancellationToken token
Returns
Type Description
Task

Remove(TCacheKey, bool?, bool)

Declaration
public virtual void Remove(TCacheKey key, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors
bool considerUow

RemoveAsync(TCacheKey, bool?, bool, CancellationToken)

Declaration
public virtual Task RemoveAsync(TCacheKey key, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey key
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task

RemoveMany(IEnumerable<TCacheKey>, bool?, bool)

Declaration
public void RemoveMany(IEnumerable<TCacheKey> keys, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors
bool considerUow

RemoveManyAsync(IEnumerable<TCacheKey>, bool?, bool, CancellationToken)

Declaration
public Task RemoveManyAsync(IEnumerable<TCacheKey> keys, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
IEnumerable<TCacheKey> keys
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task

Set(TCacheKey, TCacheItem, DistributedCacheEntryOptions?, bool?, bool)

Declaration
public virtual void Set(TCacheKey key, TCacheItem value, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
TCacheKey key
TCacheItem value
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow

SetAsync(TCacheKey, TCacheItem, DistributedCacheEntryOptions?, bool?, bool, CancellationToken)

Declaration
public virtual Task SetAsync(TCacheKey key, TCacheItem value, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
TCacheKey key
TCacheItem value
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task

SetDefaultOptions()

Declaration
protected virtual void SetDefaultOptions()

SetMany(IEnumerable<KeyValuePair<TCacheKey, TCacheItem>>, DistributedCacheEntryOptions?, bool?, bool)

Declaration
public void SetMany(IEnumerable<KeyValuePair<TCacheKey, TCacheItem>> items, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
IEnumerable<KeyValuePair<TCacheKey, TCacheItem>> items
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow

SetManyAsync(IEnumerable<KeyValuePair<TCacheKey, TCacheItem>>, DistributedCacheEntryOptions?, bool?, bool, CancellationToken)

Declaration
public virtual Task SetManyAsync(IEnumerable<KeyValuePair<TCacheKey, TCacheItem>> items, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
IEnumerable<KeyValuePair<TCacheKey, TCacheItem>> items
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task

SetManyFallback(KeyValuePair<TCacheKey, TCacheItem>[], DistributedCacheEntryOptions?, bool?, bool)

Declaration
protected virtual void SetManyFallback(KeyValuePair<TCacheKey, TCacheItem>[] items, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false)
Parameters
Type Name Description
KeyValuePair<TCacheKey, TCacheItem>[] items
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow

SetManyFallbackAsync(KeyValuePair<TCacheKey, TCacheItem>[], DistributedCacheEntryOptions?, bool?, bool, CancellationToken)

Declaration
protected virtual Task SetManyFallbackAsync(KeyValuePair<TCacheKey, TCacheItem>[] items, DistributedCacheEntryOptions? options = null, bool? hideErrors = null, bool considerUow = false, CancellationToken token = default)
Parameters
Type Name Description
KeyValuePair<TCacheKey, TCacheItem>[] items
DistributedCacheEntryOptions options
bool? hideErrors
bool considerUow
CancellationToken token
Returns
Type Description
Task

ShouldConsiderUow(bool)

Declaration
protected virtual bool ShouldConsiderUow(bool considerUow)
Parameters
Type Name Description
bool considerUow
Returns
Type Description
bool

ToCacheItem(byte[]?)

Declaration
protected virtual TCacheItem? ToCacheItem(byte[]? bytes)
Parameters
Type Name Description
byte[] bytes
Returns
Type Description
TCacheItem

ToCacheItems(byte[]?[], TCacheKey[])

Declaration
protected virtual KeyValuePair<TCacheKey, TCacheItem?>[] ToCacheItems(byte[]?[] itemBytes, TCacheKey[] itemKeys)
Parameters
Type Name Description
byte[][] itemBytes
TCacheKey[] itemKeys
Returns
Type Description
KeyValuePair<TCacheKey, TCacheItem>[]

ToRawCacheItems(KeyValuePair<TCacheKey, TCacheItem>[])

Declaration
protected virtual KeyValuePair<string, byte[]>[] ToRawCacheItems(KeyValuePair<TCacheKey, TCacheItem>[] items)
Parameters
Type Name Description
KeyValuePair<TCacheKey, TCacheItem>[] items
Returns
Type Description
KeyValuePair<string, byte[]>[]

Implements

IDistributedCache<TCacheItem, TCacheKey>

Extension Methods

AbpObjectExtensions.As<T>(object)
AbpObjectExtensions.To<T>(object)
LockExtensions.Locking(object, Action)
LockExtensions.Locking<TResult>(object, Func<TResult>)
AbpObjectExtensions.If<T>(T, bool, Action<T>)
AbpObjectExtensions.If<T>(T, bool, Func<T, T>)
AbpObjectExtensions.IsIn<T>(T, IEnumerable<T>)
AbpObjectExtensions.IsIn<T>(T, params T[])
AbpQueryableExtensions.OrderByIf<T, TQueryable>(TQueryable, bool, string)
AbpQueryableExtensions.PageBy<T, TQueryable>(TQueryable, int, int)
AbpQueryableExtensions.WhereIf<T, TQueryable>(TQueryable, bool, Expression<Func<T, bool>>)
AbpQueryableExtensions.WhereIf<T, TQueryable>(TQueryable, bool, Expression<Func<T, int, bool>>)
AbpOpenIddictQueryableExtensions.SkipIf<T, TQueryable>(TQueryable, bool, int?)
AbpOpenIddictQueryableExtensions.TakeIf<T, TQueryable>(TQueryable, bool, int?)
LockExtensions.Locking<T>(T, Action<T>)
LockExtensions.Locking<T, TResult>(T, Func<T, TResult>)
In this article
Back to top Powered by ABP.IO Platform