• 记CSRedisCore在NetCore中使用 入门篇封装


     首先 Nuget CSRedisCore

    新建一个 IRedisClient 接口

    1 public interface IRedisClient
    2     {
    3         string Get(string key);
    4         Task<string> GetAsync(string key);
    5         void Set(string key, object t, int expiresSec = 0);
    6         Task SetAsync(string key, object t, int expiresSec = 0);
    7         T Get<T>(string key) where T : new();
    8         Task<T> GetAsync<T>(string key) where T : new();
    9     }

    实现接口

     1 public class CustomerRedis : IRedisClient
     2     {
     3         public string Get(string key)
     4         {
     5             return RedisHelper.Get(key);
     6         }
     7 
     8         public T Get<T>(string key) where T : new()
     9         {
    10             return RedisHelper.Get<T>(key);
    11         }
    12 
    13         public async Task<string> GetAsync(string key)
    14         {
    15             return await RedisHelper.GetAsync(key);
    16         }
    17 
    18         public async Task<T> GetAsync<T>(string key) where T : new()
    19         {
    20             return await RedisHelper.GetAsync<T>(key);
    21         }
    22 
    23         public void Set(string key, object t, int expiresSec = 0)
    24         {
    25             RedisHelper.Set(key, t, expiresSec);
    26         }
    27 
    28         public async Task SetAsync(string key, object t, int expiresSec = 0)
    29         {
    30             await RedisHelper.SetAsync(key, t, expiresSec);
    31         }
    32     }

    appsetting.json

    "Cache": {
        "RedisConnection": "127.0.0.1:6888,password=,defaultDatabase=2,poolsize=50,connectTimeout=5000,syncTimeout=10000,prefix=cs_redis_:$$$"
      }

    Startup

    1 services.AddScoped<IRedisClient, CustomerRedis>();
    2 
    3             var redisConn = Configuration["Cache:RedisConnection"];
    4             //services.Configure<WeChatPayOptions>(Configuration.GetSection("WeChatPay"));
    5             var csredis = new CSRedis.CSRedisClient(redisConn);
    6             RedisHelper.Initialization(csredis);

    调用

     1 private readonly IRedisClient _redisClient;
     2         public ValuesController(IRedisClient redisClient)
     3         {
     4             this._redisClient = redisClient;
     5         }
     6 
     7         [HttpGet("test")]
     8         public async Task<ActionResult> Test()
     9         {
    10             await this._redisClient.SetAsync("test", "test",100);
    11             var res = await this._redisClient.GetAsync("test");
    12             return Ok(res);
    13         }

    更多使用请移至 https://github.com/2881099/csredis

  • 相关阅读:
    CMDB-实例
    linux ( crontab 定时任务命令)
    2014编程之美初赛第一场题解
    单机与分布式OpenVAS在BackTrack上的配置(实验报告)
    Hadoop 2.2.0 在Red Hat Enterprise Linux 6.1 上的分布式配置(VMware虚拟机,1个namenode,2个datanode)
    Red Hat Enterprise Linux 6.1 的 JDK 1.7 安装
    TopCoder SRM 606 Div2 题解
    HDU 1561 The more, The Better (树形DP)
    HDU 2196 Computer (树形DP)
    HDU 1520 Anniversary party (树形DP)
  • 原文地址:https://www.cnblogs.com/KenFine/p/12434167.html
Copyright © 2020-2023  润新知