Interface ICacheService
Interface for caching service that provides methods for managing cached data.
Namespace: DataWeb.Data
Assembly: DataWeb.Core.dll
Syntax
public interface ICacheService
Properties
Name
Gets the name of the cache service instance.
Declaration
string Name { get; }
Property Value
Type | Description |
---|---|
string |
Methods
ClearAsync(CancellationToken)
Clears all cached data.
Declaration
Task ClearAsync(CancellationToken cancellationToken = default)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task | A task that represents the asynchronous clear operation. |
GetAsync<T>(string, Func<Task<T>>, string[], IUser, DateTime?, CancellationToken)
Retrieves the cached data associated with the specified key.
Declaration
Task<T> GetAsync<T>(string key, Func<Task<T>> fetchDelegate, string[] dependencies = null, IUser user = null, DateTime? expiration = null, CancellationToken cancellationToken = default)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key of the cached data to retrieve. |
Func<Task<T>> | fetchDelegate | A function that retrieves the data to cache if it's not already cached. |
string[] | dependencies | An array of dependency keys for the cached data. |
IUser | user | The user associated with the cached data. |
DateTime? | expiration | The expiration time of the cached data. |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<T> | The cached data associated with the specified key. |
Type Parameters
Name | Description |
---|---|
T | The type of the cached data to retrieve. |
GetSectionCacheAsync<T>(string, Func<Task<T>>, string[], IUser, DateTime?, CancellationToken)
Retrieves the cached data associated with the specified key and sections.
Declaration
Task<T> GetSectionCacheAsync<T>(string key, Func<Task<T>> fetchDelegate, string[] sections, IUser user = null, DateTime? expiration = null, CancellationToken cancellationToken = default)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key of the cached data to retrieve. |
Func<Task<T>> | fetchDelegate | A function that retrieves the data to cache if it's not already cached. |
string[] | sections | An array of section names for the cached data. |
IUser | user | The user associated with the cached data. |
DateTime? | expiration | The expiration time of the cached data. |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<T> | The cached data associated with the specified key and sections. |
Type Parameters
Name | Description |
---|---|
T | The type of the cached data to retrieve. |
RemoveAsync(string, CancellationToken)
Removes the cached data associated with the specified key.
Declaration
Task RemoveAsync(string key, CancellationToken cancellationToken = default)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key of the cached data to remove. |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task | A task that represents the asynchronous remove operation. |
SetAsync<T>(string, T, string[], DateTime?, CancellationToken)
Caches the specified data associated with the specified key.
Declaration
Task SetAsync<T>(string key, T value, string[] dependencies = null, DateTime? expiration = null, CancellationToken cancellationToken = default)
Parameters
Type | Name | Description |
---|---|---|
string | key | The key to associate with the cached data. |
T | value | The data to cache. |
string[] | dependencies | An array of dependency keys for the cached data. |
DateTime? | expiration | The expiration time of the cached data. |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task | A task that represents the asynchronous set operation. |
Type Parameters
Name | Description |
---|---|
T | The type of the data to cache. |