// 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证。
//
// 必须在法律法规允许的范围内正确使用,严禁将其用于非法、欺诈、恶意或侵犯他人合法权益的目的。
namespace Admin.NET.Core;
public static class CacheSetup
{
///
/// 缓存注册(新生命Redis组件)
///
///
public static void AddCache(this IServiceCollection services)
{
ICache cache = Cache.Default;
var cacheOptions = App.GetConfig("Cache", true);
if (cacheOptions.CacheType == CacheTypeEnum.Redis.ToString())
{
cache = new FullRedis(new RedisOptions
{
Configuration = cacheOptions.Redis.Configuration,
Prefix = cacheOptions.Redis.Prefix
});
if (cacheOptions.Redis.MaxMessageSize > 0)
((FullRedis)cache).MaxMessageSize = cacheOptions.Redis.MaxMessageSize;
}
services.AddSingleton(cache);
}
}