Class ObjectInstanceCacheExtensions
Extension methods for EPiServer.Framework.Cache.IObjectInstanceCache
Inheritance
Inherited Members
Namespace: Mediachase.Commerce.Extensions
Assembly: Mediachase.Commerce.dll
Version: 10.8.0Syntax
public static class ObjectInstanceCacheExtensions
Methods
AssertCompatibleCacheImplementation(IObjectInstanceCache)
Asserts if the supplied cache implementation is of type EPiServer.Framework.Cache.HttpRuntimeCache, otherwise throws an excepttion.
Declaration
public static void AssertCompatibleCacheImplementation(this IObjectInstanceCache cache)
Parameters
Type | Name | Description |
---|---|---|
EPiServer.Framework.Cache.IObjectInstanceCache | cache | The cache. |
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | Thrown if |
ReadThrough<T>(IObjectInstanceCache, Boolean, String, IEnumerable<String>, TimeSpan, Func<T>)
Gets an item from cache, and if there is a cache miss, gets the item using the supplied delegate and caches the result.
Declaration
public static T ReadThrough<T>(this IObjectInstanceCache cache, bool useCache, string cacheKey, IEnumerable<string> masterKeys, TimeSpan duration, Func<T> load)
where T : class
Parameters
Type | Name | Description |
---|---|---|
EPiServer.Framework.Cache.IObjectInstanceCache | cache | The cache implementation to use. |
System.Boolean | useCache | if set to |
System.String | cacheKey | The cache key for the item. |
System.Collections.Generic.IEnumerable<System.String> | masterKeys | The master keys the cached item should depend on. |
System.TimeSpan | duration | The cache duration. |
System.Func<T> | load | The delegate to execute to get the item if it is not in cache. |
Returns
Type | Description |
---|---|
T | The item from cache or as returned by the delegate if not in cache. |
Type Parameters
Name | Description |
---|---|
T | The type of item. |
ReadThrough<T>(IObjectInstanceCache, String, IEnumerable<String>, TimeSpan, Func<T>)
Gets an item from cache, and if there is a cache miss, gets the item using the supplied delegate and caches the result.
Declaration
public static T ReadThrough<T>(this IObjectInstanceCache cache, string cacheKey, IEnumerable<string> masterKeys, TimeSpan duration, Func<T> load)
where T : class
Parameters
Type | Name | Description |
---|---|---|
EPiServer.Framework.Cache.IObjectInstanceCache | cache | The cache implementation to use. |
System.String | cacheKey | The cache key for the item. |
System.Collections.Generic.IEnumerable<System.String> | masterKeys | The master keys the cached item should depend on. |
System.TimeSpan | duration | The cache duration. |
System.Func<T> | load | The delegate to execute to get the item if it is not in cache. |
Returns
Type | Description |
---|---|
T | The item from cache or as returned by the delegate if not in cache. |
Type Parameters
Name | Description |
---|---|
T | The type of item. |