CacheSetup.cs 1021 B

12345678910111213141516171819202122232425262728293031
  1. // 大名科技(天津)有限公司版权所有 电话:18020030720 QQ:515096995
  2. //
  3. // 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证
  4. namespace Admin.NET.Core;
  5. public static class CacheSetup
  6. {
  7. /// <summary>
  8. /// 缓存注册(新生命Redis组件)
  9. /// </summary>
  10. /// <param name="services"></param>
  11. public static void AddCache(this IServiceCollection services)
  12. {
  13. ICache cache = Cache.Default;
  14. var cacheOptions = App.GetConfig<CacheOptions>("Cache", true);
  15. if (cacheOptions.CacheType == CacheTypeEnum.Redis.ToString())
  16. {
  17. cache = new FullRedis(new RedisOptions
  18. {
  19. Configuration = cacheOptions.Redis.Configuration,
  20. Prefix = cacheOptions.Redis.Prefix
  21. });
  22. if (cacheOptions.Redis.MaxMessageSize > 0)
  23. ((FullRedis)cache).MaxMessageSize = cacheOptions.Redis.MaxMessageSize;
  24. }
  25. services.AddSingleton(cache);
  26. }
  27. }