Table of Contents

Class CacheExtensions

Namespace
LinqToDB.Common.Internal.Cache
Assembly
linq2db.dll
public static class CacheExtensions
Inheritance
CacheExtensions

Methods

GetOrCreateAsync<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, Func<ICacheEntry<TKey, TItem>, Task<TItem>>)

public static Task<TItem> GetOrCreateAsync<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, Func<ICacheEntry<TKey, TItem>, Task<TItem>> factory) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
factory Func<ICacheEntry<TKey, TItem>, Task<TItem>>

Returns

Task<TItem>

Type Parameters

TKey
TItem

GetOrCreate<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, Func<ICacheEntry<TKey, TItem>, TItem>)

public static TItem GetOrCreate<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, Func<ICacheEntry<TKey, TItem>, TItem> factory) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
factory Func<ICacheEntry<TKey, TItem>, TItem>

Returns

TItem

Type Parameters

TKey
TItem

GetOrCreate<TItem, TKey, TContext>(IMemoryCache<TKey, TItem>, TKey, TContext, Func<ICacheEntry<TKey, TItem>, TContext, TItem>)

public static TItem GetOrCreate<TItem, TKey, TContext>(this IMemoryCache<TKey, TItem> cache, TKey key, TContext context, Func<ICacheEntry<TKey, TItem>, TContext, TItem> factory) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
context TContext
factory Func<ICacheEntry<TKey, TItem>, TContext, TItem>

Returns

TItem

Type Parameters

TItem
TKey
TContext

GetOrCreate<TItem, TKey, TDerivedKey, TContext>(IMemoryCache<TKey, TItem>, TDerivedKey, TContext, Func<ICacheEntry<TKey, TItem>, TDerivedKey, TContext, TItem>)

public static TItem GetOrCreate<TItem, TKey, TDerivedKey, TContext>(this IMemoryCache<TKey, TItem> cache, TDerivedKey key, TContext context, Func<ICacheEntry<TKey, TItem>, TDerivedKey, TContext, TItem> factory) where TKey : notnull where TDerivedKey : TKey

Parameters

cache IMemoryCache<TKey, TItem>
key TDerivedKey
context TContext
factory Func<ICacheEntry<TKey, TItem>, TDerivedKey, TContext, TItem>

Returns

TItem

Type Parameters

TItem
TKey
TDerivedKey
TContext

Get<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey)

public static TItem? Get<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey

Returns

TItem

Type Parameters

TKey
TItem

Set<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, TItem)

public static TItem Set<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, TItem value) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
value TItem

Returns

TItem

Type Parameters

TKey
TItem

Set<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, TItem, IChangeToken)

public static TItem Set<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, TItem value, IChangeToken expirationToken) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
value TItem
expirationToken IChangeToken

Returns

TItem

Type Parameters

TKey
TItem

Set<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, TItem, MemoryCacheEntryOptions<TKey>?)

public static TItem Set<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, TItem value, MemoryCacheEntryOptions<TKey>? options) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
value TItem
options MemoryCacheEntryOptions<TKey>

Returns

TItem

Type Parameters

TKey
TItem

Set<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, TItem, DateTimeOffset)

public static TItem Set<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, TItem value, DateTimeOffset absoluteExpiration) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
value TItem
absoluteExpiration DateTimeOffset

Returns

TItem

Type Parameters

TKey
TItem

Set<TKey, TItem>(IMemoryCache<TKey, TItem>, TKey, TItem, TimeSpan)

public static TItem Set<TKey, TItem>(this IMemoryCache<TKey, TItem> cache, TKey key, TItem value, TimeSpan absoluteExpirationRelativeToNow) where TKey : notnull

Parameters

cache IMemoryCache<TKey, TItem>
key TKey
value TItem
absoluteExpirationRelativeToNow TimeSpan

Returns

TItem

Type Parameters

TKey
TItem