Files
parr_api/PARR.DAL/CacheServices/IRedisCacheService.cs

54 lines
1.8 KiB
C#

namespace PARR.DAL.CacheServices
{
public interface IRedisCacheService
{
/// <summary>
/// Получить кэшированные данные
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <returns></returns>
T? GetCachedData<T>(string key);
/// <summary>
/// Получить кэшированные данные асинхронно
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <returns></returns>
Task<T?> GetCachedDataAsync<T>(string key);
/// <summary>
/// Добавить в кэш данные
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <param name="data"></param>
/// <param name="cacheDuration"></param>
void SetCachedData<T>(string key, T data, TimeSpan cacheDuration);
/// <summary>
/// Добавить в кэш данные асинхронно
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <param name="data"></param>
/// <param name="cacheDuration"></param>
/// <returns></returns>
Task SetCachedDataAsync<T>(string key, T data, TimeSpan cacheDuration);
/// <summary>
/// Удалить кэшированные данные
/// </summary>
/// <param name="key"></param>
void DeleteCachedData(string key);
/// <summary>
/// Удалить кэшированные данные асинхронно
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
Task DeleteCachedDataAsync(string key);
}
}