一、项目说明 NewLife.Redis.Core基于新生命团队NewLife.Redis的封装,支持.NETCore3/.NET5/.NET6。 NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。 源码:https://github.com/Ne
NewLife.Redis.Core基于新生命团队NewLife.Redis的封装,支持.NETCore3/.NET5/.NET6。
NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。
源码: https://github.com/NewLifeX/NewLife.Redis
Nuget:NewLife.Redis
教程:https://newlifex.com/core/redis
using NewLife.Redis.Core;
NewLifeRedis redis = new NewLifeRedis("server=127.0.0.1:6379;password=Shiny123456;db=4");
//普通操作
redis.Set("test", "1");
Console.WriteLine(redis.Get<string>("test"));
//列表
redis.ListAdd("listtest", 1);
redis.ListGetAll<string>("listtest");
//SortedSet
redis.SortedSetAdd("sortsettest", "1", 1.0);
redis.SortedSetIncrement("sortsettest", "1", 1.0);
//set
redis.SetAdd("settest", "2");
//哈希
redis.HashAdd("hashtest", "1", "2");
redis.HashGet<string>("hashtest", new string[] { "1" });
//队列操作
//方式1
var queue = redis.GetRedisQueue<string>("queue");
queue.Add("test");
var data = queue.Take(1);
//方式2
redis.AddQueue("queue", "1");
redis.GetQueueOne<string>("queue");
2.2 通过IOC注入
ConfigureServices里注册组件
//默认读取配置文件:ConnectionStrings:Redis
services.AddRedisCacheManager();
//指定链接字符串
services.AddRedisCacheManager("server=127.0.0.1:6379;password=xxx;db=4");
构造函数里注入IRedisCacheManager
private readonly ILogger<Worker> _logger;
private readonly IRedisCacheManager _redisCacheManager;
public Worker(ILogger<Worker> logger, IRedisCacheManager redisCacheManager)
{
_logger = logger;
this._redisCacheManager = redisCacheManager;
var data = _redisCacheManager.Get<string>("test");
}
三、实现消息队列
详情可以看我的这篇文章:.Net大杀器之基于Newlife.Redis的可重复消费+共享订阅队列来替换第三方MQ
四、源码地址Github:https://github.com/NewLifeX/NewLife.Redis.Core
Gitee:https://gitee.com/huguodong520/NewLife.Redis.Core.git