三分钟学会Redis在.NET Core中做缓存中间件

2021-02-07 06:18

阅读:816

标签:poi   现在   一个   releases   des   ons   安装   依赖注入   actor   

 大家好,今天给大家说明如何在.NET Core中使用Redis,我们在想要辩论程序的好与坏,都想需要一个可视化工具,我经常使用的是一位国内大牛开发的免费工具,其Github地址为: https://github.com/qishibo/AnotherRedisDesktopManager/releases ,它真的很给力,Redis的安装在 https://github.com/MicrosoftArchive/redis/releases,我一般使用的EasyCaching用于做缓存抽象层,首先创建一个.NET Core API 项目,随后nuget安装 EasyCaching.Core 以及 EasyCaching.Redis 。

技术图片
public void ConfigureServices(IServiceCollection services)
        {
            services.AddEasyCaching(options=> {
                options.UseRedis(configure => {
                    configure.DBConfig.Endpoints.Add(
                        new EasyCaching.Core.Configurations.ServerEndPoint("localhost",6379)
                    );
                    configure.DBConfig.AllowAdmin = true;
                },"RedisExample");
            });
            services.AddControllers();
        }
技术图片

   随后在Startup中注册中间件,首先启动添加EasyCaching的服务,在向启动添加EasyCaching的某些选项,可以看到AddEasyCaching的过程是这样的。

//  EasyCaching service collection extensions.
    public static class EasyCachingServiceCollectionExtensions
    {
        public static IServiceCollection AddEasyCaching(this IServiceCollection services, Action setupAction);
    }

   UseRedis 方法的第二个参数,适用于Repository的选择哪个RedisClient实例,这是非常有利的;我们创建一个API,名为 RedisController ,其中依赖注入我们的服务。

技术图片
[Route("/Redis")]
    [ApiController]
    public class RedisController : ControllerBase
    {
        private IEasyCachingProvider cachingProvider;
        private IEasyCachingProviderFactory easyCachingProviderFactory;
        public RedisController(IEasyCachingProviderFactory cachingProviderFactory)
        {
            this.easyCachingProviderFactory = cachingProviderFactory;
            this.cachingProvider = cachingProviderFactory.GetCachingProvider("RedisExample");
        }
        [HttpGet("Demo")]
        public IActionResult SetRedisItem()
        {
            this.cachingProvider.Set("zaranet use easycaching", "this is my value", TimeSpan.FromDays(100));
            return Ok();
        }
    }
技术图片

  点击启动,访问到 https://localhost:port/Redis/Demo 中,使用可视化工具查看,发现OK了。

技术图片

 不光如何,我们我们进行了赋值,现在应该还需要一个获取的操作。

技术图片
[HttpGet("Get")]
        public IActionResult GetRedisItem()
        {
           var item =  this.cachingProvider.Get("zaranet use easycaching");
           return Ok(item);
        }
技术图片

技术图片

 就这样,你就可以在.NET Core中使用Redis去做你觉得有价值的事情,都是非常简单的事情。

转自https://www.cnblogs.com/ZaraNet/p/11837518.html

 

在注册中间件的时候,如果redis需要密码,可以这样配置 

 services.AddEasyCaching(options => {
                options.UseRedis(configure => {
                    //configure.DBConfig.Endpoints.Add(
                    //    new EasyCaching.Core.Configurations.ServerEndPoint("129.211.129.92", 63709)
                    //);
                    configure.DBConfig.Configuration = "129.29,password=s";
                    configure.DBConfig.AllowAdmin = true;
                }, "RedisExample");
            });

  

三分钟学会Redis在.NET Core中做缓存中间件

标签:poi   现在   一个   releases   des   ons   安装   依赖注入   actor   

原文地址:https://www.cnblogs.com/Procedure-mice/p/13095106.html


评论


亲,登录后才可以留言!