Elight.Utility/Extension/DataCache/HttpRuntimeCache.cs
(开头部分) 9KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
#if !NETFRAMEWORK
using Microsoft.Extensions.Caching.Memory;
using Elight.Utility.Web;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Text;
namespace Elight.Utility.Extension.DataCache
{
public class HttpRuntimeCache : ICacheService
{
public void Add<V>(string key, V value)
{
MemoryCacheHelper.GetInstance().Set(key, value, new TimeSpan(0, 20, 0));
}
public void Add<V>(string key, V value, int cacheDurationInSeconds)
{
MemoryCacheHelper.GetInstance().Set(key, value, new TimeSpan(0, 0, cacheDurationInSeconds));
}
public bool ContainsKey<V>(string key)
{
return MemoryCacheHelper.GetInstance().Get(key) != null ? true : false;
}
public V Get<V>(string key)
{
return (V)MemoryCacheHelper.GetInstance().Get(key);
}
public IEnumerable<string> GetAllKey<V>()
{
return MemoryCacheHelper.GetInstance().GetCacheKeys();
}
public V GetOrCreate<V>(string cacheKey, Func<V> create, int cacheDurationInSeconds = int.MaxValue)
{
var cacheManager = MemoryCacheHelper.GetInstance();
if (cacheManager.GetCacheKeys().Contains(cacheKey))
{
return (V)cacheManager.Get(cacheKey);
}
else
{
var result = create();
cacheManager.Set(cacheKey, result, new TimeSpan(0, 0, cacheDurationInSeconds));
return result;
}
}
public void Remove<V>(string key)
{
MemoryCacheHelper.GetInstance().Remove(key);
}
}
}
#else
using SqlSugar;
后面还有 240 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。