Memoize Method
Definition
- Namespace
- Cuemon.Extensions.Runtime.Caching
- Assemblies
- Cuemon.Extensions.Runtime.Caching.dll
Memoize<TKey, TResult>(ICacheEnumerable<TKey>, IDependency, Func<TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<TResult> Memoize<TKey, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<TResult>The function delegate used to provide a memoized value.
Returns
- Func<TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TResultThe type of the value in the cache.
Memoize<TKey, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<TResult> Memoize<TKey, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<TResult>The function delegate used to provide a memoized value.
Returns
- Func<TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TResultThe type of the value in the cache.
Memoize<TKey, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<TResult> Memoize<TKey, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<TResult>The function delegate used to provide a memoized value.
Returns
- Func<TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TResultThe type of the value in the cache.
Memoize<TKey, TResult>(ICacheEnumerable<TKey>, DateTime, Func<TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<TResult> Memoize<TKey, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<TResult>The function delegate used to provide a memoized value.
Returns
- Func<TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TResultThe type of the value in the cache.
Memoize<TKey, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<TResult> Memoize<TKey, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<TResult>The function delegate used to provide a memoized value.
Returns
- Func<TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TResultThe type of the value in the cache.
Memoize<TKey, T, TResult>(ICacheEnumerable<TKey>, IDependency, Func<T, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T, TResult> Memoize<TKey, T, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<T, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TThe type of the parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<T, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T, TResult> Memoize<TKey, T, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<T, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TThe type of the parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<T, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T, TResult> Memoize<TKey, T, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<T, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TThe type of the parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T, TResult>(ICacheEnumerable<TKey>, DateTime, Func<T, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T, TResult> Memoize<TKey, T, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<T, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TThe type of the parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<T, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T, TResult> Memoize<TKey, T, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<T, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<T, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
TThe type of the parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, TResult>(ICacheEnumerable<TKey>, IDependency, Func<T1, T2, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, TResult> Memoize<TKey, T1, T2, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<T1, T2, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<T1, T2, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, TResult> Memoize<TKey, T1, T2, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<T1, T2, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<T1, T2, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, TResult> Memoize<TKey, T1, T2, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<T1, T2, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, TResult>(ICacheEnumerable<TKey>, DateTime, Func<T1, T2, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, TResult> Memoize<TKey, T1, T2, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<T1, T2, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<T1, T2, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, TResult> Memoize<TKey, T1, T2, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<T1, T2, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<T1, T2, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, TResult>(ICacheEnumerable<TKey>, IDependency, Func<T1, T2, T3, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, TResult> Memoize<TKey, T1, T2, T3, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<T1, T2, T3, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<T1, T2, T3, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, TResult> Memoize<TKey, T1, T2, T3, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<T1, T2, T3, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<T1, T2, T3, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, TResult> Memoize<TKey, T1, T2, T3, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<T1, T2, T3, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, TResult>(ICacheEnumerable<TKey>, DateTime, Func<T1, T2, T3, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, TResult> Memoize<TKey, T1, T2, T3, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<T1, T2, T3, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<T1, T2, T3, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, TResult> Memoize<TKey, T1, T2, T3, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<T1, T2, T3, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<T1, T2, T3, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, TResult>(ICacheEnumerable<TKey>, IDependency, Func<T1, T2, T3, T4, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, TResult> Memoize<TKey, T1, T2, T3, T4, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<T1, T2, T3, T4, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<T1, T2, T3, T4, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, TResult> Memoize<TKey, T1, T2, T3, T4, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<T1, T2, T3, T4, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<T1, T2, T3, T4, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, TResult> Memoize<TKey, T1, T2, T3, T4, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<T1, T2, T3, T4, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, TResult>(ICacheEnumerable<TKey>, DateTime, Func<T1, T2, T3, T4, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, TResult> Memoize<TKey, T1, T2, T3, T4, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<T1, T2, T3, T4, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<T1, T2, T3, T4, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, TResult> Memoize<TKey, T1, T2, T3, T4, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<T1, T2, T3, T4, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<T1, T2, T3, T4, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, T5, TResult>(ICacheEnumerable<TKey>, IDependency, Func<T1, T2, T3, T4, T5, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, T5, TResult> Memoize<TKey, T1, T2, T3, T4, T5, TResult>(this ICacheEnumerable<TKey> cache, IDependency dependency, Func<T1, T2, T3, T4, T5, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependencyIDependencyAn IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, T5, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, T5, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.T5The type of the fifth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, T5, TResult>(ICacheEnumerable<TKey>, IEnumerable<IDependency>, Func<T1, T2, T3, T4, T5, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, T5, TResult> Memoize<TKey, T1, T2, T3, T4, T5, TResult>(this ICacheEnumerable<TKey> cache, IEnumerable<IDependency> dependencies, Func<T1, T2, T3, T4, T5, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
dependenciesIEnumerable<IDependency>A sequence of IDependency implementations that monitors changes in the state of the data which a cache entry depends on. If a state change is registered, the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, T5, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, T5, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.T5The type of the fifth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, T5, TResult>(ICacheEnumerable<TKey>, TimeSpan, Func<T1, T2, T3, T4, T5, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, T5, TResult> Memoize<TKey, T1, T2, T3, T4, T5, TResult>(this ICacheEnumerable<TKey> cache, TimeSpan slidingExpiration, Func<T1, T2, T3, T4, T5, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
slidingExpirationTimeSpanThe sliding expiration time from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, T5, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, T5, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.T5The type of the fifth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, T5, TResult>(ICacheEnumerable<TKey>, DateTime, Func<T1, T2, T3, T4, T5, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, T5, TResult> Memoize<TKey, T1, T2, T3, T4, T5, TResult>(this ICacheEnumerable<TKey> cache, DateTime absoluteExpiration, Func<T1, T2, T3, T4, T5, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
absoluteExpirationDateTimeThe absolute expiration date time value from when the cached entry becomes invalid and is removed from the cache.
valueFactoryFunc<T1, T2, T3, T4, T5, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, T5, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.T5The type of the fifth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.
Memoize<TKey, T1, T2, T3, T4, T5, TResult>(ICacheEnumerable<TKey>, CacheInvalidation, Func<T1, T2, T3, T4, T5, TResult>)
Memoizes the specified valueFactory in the cache for fast access.
public static Func<T1, T2, T3, T4, T5, TResult> Memoize<TKey, T1, T2, T3, T4, T5, TResult>(this ICacheEnumerable<TKey> cache, CacheInvalidation invalidation, Func<T1, T2, T3, T4, T5, TResult> valueFactory)
Parameters
cacheICacheEnumerable<TKey>The ICacheEnumerable<TKey> to extend.
invalidationCacheInvalidationThe object that contains expiration details for a specific cache entry.
valueFactoryFunc<T1, T2, T3, T4, T5, TResult>The function delegate used to provide a memoized value.
Returns
- Func<T1, T2, T3, T4, T5, TResult>
A memoized function delegate that is otherwise equivalent to
valueFactory.
Type Parameters
TKeyThe type of the key in the cache.
T1The type of the first parameter of the delegate
valueFactory.T2The type of the second parameter of the delegate
valueFactory.T3The type of the third parameter of the delegate
valueFactory.T4The type of the fourth parameter of the delegate
valueFactory.T5The type of the fifth parameter of the delegate
valueFactory.TResultThe type of the value in the cache.