当前位置: 移动技术网 > IT编程>开发语言>.net > 三分钟学会Redis在.NET Core中做缓存中间件

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

2019年11月12日  | 移动技术网IT编程  | 我要评论

qq头像吧,好记星e900,盘龙城经济开发区

  大家好,今天给大家说明如何在.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<easycachingoptions> 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<string>("zaranet use easycaching");
           return ok(item);
        }

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网