上一篇Redis的系列已經講了Redis的下載、安裝,接下來這一篇,主要講使用Redis提供的 ServiceStack.Redis 這個開發庫在C#項目中作為緩存服務使用的一個簡單示例,廢話不多話,直接上代碼。 ...
上一篇Redis的系列已經講了Redis的下載、安裝,接下來這一篇,主要講使用Redis提供的 ServiceStack.Redis 這個開發庫在C#項目中作為緩存服務使用的一個簡單示例,廢話不多話,直接上代碼。
private void TestRedis() { var Redis = new RedisClient("localhost"); //創建Redis實例(主機名根據項目的實際情況設置,可以使用配置文件的形式配置) var records = new List<TestInfo>(); /*****操作泛型數據*******/ if (Redis.Exists("TestInfos") <= 0) //判斷某個緩存是否存在 { //添加泛型集合數據 Redis.Set("TestInfos", new List<TestInfo>() { new TestInfo() { id = 1, name = "11" }, new TestInfo() { id = 2, name = "22" }, new TestInfo() { id = 3, name = "33" }, new TestInfo() { id = 4, name = "44" } }); Redis.Expire("TestInfos", 60); //設置為一分鐘過期 } records = Redis.Get<List<TestInfo>>("TestInfos"); //獲取Redis的緩存數據 //Redis.Remove("TestInfos"); //刪除一個緩存 //records = Redis.Get<List<TestInfo>>("TestInfos"); //刪除後嘗試重新獲取,結果為null(Redis中獲取不存在的引用類型時返回null) /*****操作泛型數據*******/ /*****鏈表操作*******/ var testRedisList = Redis.As<TestInfo>(); IRedisList<TestInfo> testData = testRedisList.Lists["testData"]; //指定一個鏈表 Redis.Expire("testData", 60); //設置為一分鐘過期 testData.AddRange(records); //添加數據 testRedisList.Save(); //保存鏈表數據 var testDataList = Redis.As<TestInfo>().Lists["testData"].ToList(); //獲取鏈表數據 /*****鏈表操作*******/ /*****操作int類型數據*******/ if (Redis.Exists("TestInt") <= 0) { Redis.Set("TestInt", 11); //保存一個int類型的緩步數據 } var recordStr = Redis.Get<int>("TestInt"); //獲取數據 Redis.Remove("TestInt"); //刪除一個緩存 var redisIntVal = Redis.Get<int>("TestInt"); //刪除後嘗試重新獲取,結果為0(Redis中獲取不存在的值類型時返回預設值) /*****操作int類型數據*******/ }