.net core 使用CSRedisCore緩存數據及操作

CSRedisCore的使用很簡單,就需要實例化一個CSRedisClient(集羣連接池)對象然後初始化一下RedisHelper就可以了,他的方法名與redis-cli基本保持一致。

首先需要本地安裝redis: https://www.runoob.com/redis/redis-install.html

 

安裝完redis,密碼默認爲空,這裏我重新設置密碼

1、啓動redis:redis解壓路徑下運行

 

 

 

2、再打開一個新的命令窗口:啓動客戶端

 

 

 config get requirepass  查看密碼

 

控制檯測試代碼:

先按照NuGet程序包

 

 

 static void Main(string[] args)
        {
            Service.RedisHelperService redisService = new Service.RedisHelperService();
            // 初始化 CSRedis  
            //var csredis = Service.RedisHelperService.Configuration["CsRedisConfig:DefaultConnectString"];
            var csredis = "127.0.0.1:6379,password=123456,defaultDatabase=1,prefix=";
            RedisHelper.Initialization(new CSRedis.CSRedisClient(csredis));
            Test();
            Console.ReadKey();   
        }

        static void Test()
        {

            RedisHelper.Set("name", "李奎");//設置值。默認永不過期
            //RedisHelper.SetAsync("name", "李奎");//異步操作
            Console.WriteLine(RedisHelper.Get<String>("name"));

            RedisHelper.Set("time", DateTime.Now, 1);
            Console.WriteLine(RedisHelper.Get<DateTime>("time"));
            Thread.Sleep(1100);
            Console.WriteLine(RedisHelper.Get<DateTime>("time"));


            // 列表

        //刪除指定key的列表
        RedisHelper.Del("list");

            RedisHelper.RPush("list", "第一個元素");
            RedisHelper.RPush("list", "第二個元素");
            RedisHelper.RPush("list", "重複元素");
            RedisHelper.RPush("list", "重複元素");
            RedisHelper.RPush("list", "重複元素");
            RedisHelper.LInsertBefore("list", "第二個元素", "我是新插入的第二個元素!");
            Console.WriteLine($"list的長度爲{RedisHelper.LLen("list")}");
            //Console.WriteLine($"list的長度爲{RedisHelper.LLenAsync("list")}");//異步
            Console.WriteLine($"list的第二個元素爲{RedisHelper.LIndex("list", 1)}");
            var len = RedisHelper.LLen("list");
            var listData = RedisHelper.LRange("list",0,len-1);
            //Console.WriteLine($"list的第二個元素爲{RedisHelper.LIndexAsync("list",1)}");//異步
            Console.WriteLine(" 列表成員begin");

            foreach (var item in listData)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine(" 列表成員end");


            // 哈希
            RedisHelper.HSet("person", "name", "233");
            RedisHelper.HSet("person", "name", "233");
            RedisHelper.HSet("person", "name", "233");
            RedisHelper.HSet("person", "sex", "");
            RedisHelper.HSet("person", "age", "28");
            RedisHelper.HSet("person", "adress", "hefei");
            Console.WriteLine($"person這個哈希中的age爲{RedisHelper.HGet<int>("person", "age")}");
            //Console.WriteLine($"person這個哈希中的age爲{RedisHelper.HGetAsync<int>("person", "age")}");//異步
            //獲取哈希所有的數量和成員
            var hashLen = RedisHelper.HLen("person");
            var hashdata = RedisHelper.HGetAll("person");
            Console.WriteLine("哈希成員begin");
            foreach (var item in hashdata)
            {
                
                Console.WriteLine(item.Key+"----"+item.Value);
            }
            Console.WriteLine("哈希成員end");



            // 集合
            RedisHelper.SAdd("students", "zhangsan", "lisi");
            RedisHelper.SAdd("students", "likui", "古天樂");
            RedisHelper.SAdd("students", "likui", "古天樂");
            RedisHelper.SAdd("students", "likui", "古天樂");
            RedisHelper.SAdd("students", "wangwu");
            RedisHelper.SAdd("students", "zhaoliu");
            Console.WriteLine($"students這個集合的大小爲{RedisHelper.SCard("students")}");
            Console.WriteLine($"students這個集合是否包含wagnwu:{RedisHelper.SIsMember("students", "wangwu")}");
            //獲取集合所有的數量和成員
            var secData = RedisHelper.SMembers("students");
            Console.WriteLine("集合成員begin");

            foreach (var item in secData)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine("集合成員end");

        }

執行結果

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章