欢迎来到【一个大西瓜】的博客

不曾为梦想奋斗,拿什么去燃烧青春。有梦之人亦终将老去,但少年心气如昨。
太阳每一个时刻都同时是夕阳和朝阳,每天她沉入西边,意味着她同时从另一面土地升起。
扩大
缩小

【Core2.0帮助类】

缓存帮助类(CacheHelper)

/// <summary>
/// 缓存帮助类
/// </summary>
public class CacheHelper
{//下载:Microsoft.Extensions.Caching.Memory;
    public static IMemoryCache _memoryCache = new MemoryCache(new MemoryCacheOptions());

    /// <summary>
    /// 缓存绝对过期时间
    /// </summary>
    ///<param name="key">Cache键值</param>
    ///<param name="value">给Cache[key]赋的值</param>
    ///<param name="minute">minute分钟后绝对过期</param>
    public static void CacheInsertAddMinutes(string key, object value, int minute)
    {
        if (value == null) return;
        _memoryCache.Set(key, value, new MemoryCacheEntryOptions()
                .SetAbsoluteExpiration(TimeSpan.FromMinutes(minute)));
    }

    /// <summary>
    /// 缓存相对过期,最后一次访问后minute分钟后过期
    /// </summary>
    ///<param name="key">Cache键值</param>
    ///<param name="value">给Cache[key]赋的值</param>
    ///<param name="minute">滑动过期分钟</param>
    public static void CacheInsertFromMinutes(string key, object value, int minute)
    {
        if (value == null) return;
        _memoryCache.Set(key, value, new MemoryCacheEntryOptions()
                .SetSlidingExpiration(TimeSpan.FromMinutes(minute)));
    }

    /// <summary>
    ///以key键值,把value赋给Cache[key].如果不主动清空,会一直保存在内存中.
    /// </summary>
    ///<param name="key">Cache键值</param>
    ///<param name="value">给Cache[key]赋的值</param>
    public static void CacheInsert(string key, object value)
    {
        _memoryCache.Set(key, value);
    }

    /// <summary>
    ///清除Cache[key]的值
    /// </summary>
    ///<param name="key"></param>
    public static void CacheNull(string key)
    {
        _memoryCache.Remove(key);
    }

    /// <summary>
    ///根据key值,返回Cache[key]的值
    /// </summary>
    ///<param name="key"></param>
    public static object CacheValue(string key)
    {
        return _memoryCache.Get(key);
    }
}
View Code

 

posted on 2018-01-15 16:41  一个大西瓜咚咚咚  阅读(648)  评论(0编辑  收藏  举报

导航