Слияние кода завершено, страница обновится автоматически
using Microsoft.Extensions.Caching.Memory;
using System;
namespace ZR.Common
{
public class CacheHelper
{
public static MemoryCache Cache { get; set; }
static CacheHelper()
{
Cache = new MemoryCache(new MemoryCacheOptions
{
//SizeLimit = 1024
});
}
/// <summary>
/// 获取缓存
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <returns></returns>
public static T GetCache<T>(string key) where T : class
{
if (key == null)
throw new ArgumentNullException(nameof(key));
//return Cache.Get(key) as T; //或者
return Cache.Get<T>(key);
}
/// <summary>
/// 获取缓存
/// </summary>
/// <param name="CacheKey"></param>
/// <returns></returns>
public static object GetCache(string CacheKey)
{
return Cache.Get<object>(CacheKey);
}
public static object Get(string CacheKey)
{
return Cache.Get(CacheKey);
}
/// <summary>
/// 设置缓存,永久缓存
/// </summary>
/// <param name="CacheKey">key</param>
/// <param name="objObject">值</param>
public static object SetCache(string CacheKey, object objObject)
{
return Cache.Set(CacheKey, objObject);
}
/// <summary>
/// 设置缓存
/// </summary>
/// <param name="CacheKey">key</param>
/// <param name="objObject">值</param>
/// <param name="Timeout">过期时间(分钟)</param>
public static object SetCache(string CacheKey, object objObject, int Timeout)
{
return Cache.Set(CacheKey, objObject, DateTime.Now.AddMinutes(Timeout));
}
/// <summary>
/// 设置缓存(秒)
/// </summary>
/// <param name="CacheKey">key</param>
/// <param name="objObject">值</param>
/// <param name="Timeout">过期时间(秒)</param>
public static void SetCaches(string CacheKey, object objObject, int Timeout)
{
Cache.Set(CacheKey, objObject, DateTime.Now.AddSeconds(Timeout));
}
/// <summary>
/// 设置缓存
/// </summary>
/// <param name="CacheKey">key</param>
/// <param name="objObject">值</param>
/// <param name="absoluteExpiration">过期时间</param>
/// <param name="slidingExpiration">过期时间间隔</param>
public static object SetCache(string CacheKey, object objObject, DateTime absoluteExpiration, TimeSpan slidingExpiration)
{
return Cache.Set(CacheKey, objObject, absoluteExpiration);
}
/// <summary>
/// 设定绝对的过期时间
/// </summary>
/// <param name="CacheKey"></param>
/// <param name="objObject"></param>
/// <param name="Seconds">超过多少秒后过期</param>
public static void SetCacheDateTime(string CacheKey, object objObject, long Seconds)
{
Cache.Set(CacheKey, objObject, DateTime.Now.AddSeconds(Seconds));
}
/// <summary>
/// 删除缓存
/// </summary>
/// <param name="key">key</param>
public static void Remove(string key)
{
Cache.Remove(key);
}
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )