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"); }
執行結果