.net core 6 redis操作类

cs 复制代码
/// <summary>
/// redis操作类
/// </summary>
public class RedisTool
{
    /// <summary>
    /// 构造
    /// </summary>
    /// <param name="configuration"></param>
    public RedisTool(IConfiguration configuration)
    {
        string redis = configuration.GetValue<string>("redis");

        CSRedisClient cSRedis = new CSRedis.CSRedisClient(redis);

        RedisHelper.Initialization(cSRedis);
    }

    /// <summary>
    /// 得到值
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    public string GetRedisString(string str)
    {
        return RedisHelper.Get(str);
    }

    /// <summary>
    /// 得到值
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    public bool SetRedisString(string key, string value)
    {
        return RedisHelper.Set(key, value);
    }

    /// <summary>
    /// 设置列表
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    public string SetRedisList(string key, string value)
    {
        //列表前后插入
        RedisHelper.RPush<string>(key, value).ToString();
        return RedisHelper.LPush<string>(key, value).ToString();
    }

    /// <summary>
    /// 设置哈希值
    /// </summary>
    /// <param name="key">表名</param>
    /// <param name="field">字段名</param>
    /// <param name="value">值</param>
    /// <returns></returns>
    public bool SetRedisHSet(string key, string field, string value)
    {
        //相同时会更新
        return RedisHelper.HSet(key, field, value);
    }

    /// <summary>
    /// 得到哈希值
    /// </summary>
    /// <param name="key"></param>
    /// <param name="field"></param>
    /// <returns></returns>
    public string GetRedisHSet(string key, string field)
    {
        return RedisHelper.HGet(key, field);
    }

    /// <summary>
    /// 给值增加指定的值
    /// </summary>
    /// <param name="key"></param>
    /// <param name="field"></param>
    /// <returns></returns>
    public long SetRedisIncre(string key, long value)
    {
        return RedisHelper.IncrBy(key, value);
    }

    /// <summary>
    /// 是否包含
    /// </summary>
    /// <param name="key"></param>
    /// <param name="value"></param>
    /// <returns></returns>
    public bool RedisSIsMember(string key, string value)
    {
        //是否包含
        return RedisHelper.SIsMember(key, value);
    }
}

1、配置appsettings.json:

"redis": "127.0.0.1:6379,password=,defaultDatabase=1,poolsize=50,ssl=false,writeBuffer=10240"

2、用的大神国产包:CSRedisCore

追加消息发布和订阅示例(mq直连和广播模式):

cs 复制代码
/// <summary>
/// 消息发布
/// </summary>
void Publish()
{
    //RedisHelper.Publish("subscribe", "12");
    RedisHelper.LPush("subscribe", "12");
}

/// <summary>
/// 消息订阅
/// </summary>
void Subscribe()
{
    //SubscribeObject subscribeObject
    //    = RedisHelper.Subscribe(("subscribe", msg => SubscribeAction(msg.Body)));

    //取消订阅
    //subscribeObject.Dispose();

    RedisHelper.SubscribeListBroadcast("subscribe", "1", msg => SubscribeAction(msg));
    RedisHelper.SubscribeListBroadcast("subscribe", "2", msg => SubscribeAction(msg));
    RedisHelper.SubscribeListBroadcast("subscribe", "3", msg => SubscribeAction(msg));
}

/// <summary>
/// 订阅到消息
/// </summary>
/// <param name="str"></param>
void SubscribeAction(string str)
{
    Console.WriteLine(str);
}
相关推荐
2601_949817726 小时前
基础篇:Linux安装redis教程(详细)
linux·运维·redis
indexsunny7 小时前
互联网大厂Java面试实战:核心技术与微服务架构在电商场景中的应用
java·spring boot·redis·kafka·maven·spring security·microservices
devilnumber11 小时前
Redis 使用过程中可能遇到的常见问题或 “坑”
数据库·redis·缓存
摇滚侠11 小时前
Redis 和 MySQL 数据同步方案,ElasticSearch 和 MySQL 数据同步方案
java·redis·mysql
人道领域11 小时前
【黑马点评日记03】实战:Redis缓存穿透,缓存击穿,缓存雪崩全解析
java·开发语言·jvm·redis·spring·tomcat
披着羊皮不是狼11 小时前
(9)批量生成文章并同步存入 MySQL 和 Redis
数据库·redis·mysql
Devin~Y12 小时前
从Spring Boot到Spring AI:音视频AIGC内容社区Java大厂面试三轮连环问(含Kafka/Redis/安全/可观测性答案)
java·spring boot·redis·spring cloud·kafka·spring security·resilience4j
Aray123414 小时前
Redis Cluster 集群选举机制
数据库·redis·缓存
zzh08115 小时前
NoSQL之Redis配置与优化
redis·bootstrap·nosql
q54314708715 小时前
基于Spring Boot 3 + Spring Security6 + JWT + Redis实现登录、token身份认证
spring boot·redis·spring