redis-server.exe redis.windows.conf
提示服務啟動成功後,進行簡單的測試
讀取寫入及刪除都正常,環境準備已經完成。
首先vs通過nuget安裝stackexchange.redis
然後我們嘗試通過stackexchange.redis對redis快取資料庫做一些基本的操作。
首先需要引用命名空間
using stackexchange.redis;
然後建立連線並且選擇資料庫,注意每個資料庫對外都是乙個從0開始的遞增數字命名,redis預設支援16個資料庫,可以通過配置databases來修改這一數字。客戶端與redis建立連線後會自動選擇0號資料庫,不過可以隨時使用select命令更換資料庫。
//不傳埠號時為預設埠號6379
connectionmultiplexer redis = connectionmultiplexer.
connect
("localhost");
idatabase db = redis.
getdatabase()
;//不傳參的情況下選擇0號資料庫
然後就可以呼叫api設定讀取redis快取了,例如我們嘗試寫入並去讀乙個字串
string
value
="abcdefg"
;db.
stringset
("mykey"
,value);
...string
value
= db.
stringget
("mykey");
console.
writeline
(value);
// writes: "abcdefg"
基本配置使用我們已經會了,然後嘗試封裝乙個幫助類可以進行一些常用的操作,例如下面我們封裝了四個方法,分別可以將乙個泛型list新增到快取,從快取中獲取指定泛型list,通過lambda表示式刪除指定list中滿足條件的元素,通過lambda表示式獲取指定list中滿足條件的集合。更多的方法如果有興趣可以自己嘗試封裝
public
class
redishelper
///
/// 將乙個泛型list新增到快取中
///
/// 泛型t
/// key
/// list
/// 資料庫序號,不傳預設為0
///
public
bool
addlist
<
t>
(string listkey,list list,
int db_index=0)
///
/// 通過指定key值獲取泛型list
///
/// 泛型t
/// key
/// 資料庫序號,不傳預設為0
///
public list
getlist
<
t>
(string listkey,
int db_index =0)
else
}else
}///
/// 刪除指定list中滿足條件的元素
///
/// key
/// lamdba表示式
/// 資料庫序號,不傳預設為0
///
public
bool
dellistbylambda
<
t>
(string listkey, func
bool
> func,
int db_index =0)
else
}else
}else
}///
/// 獲取指定list中滿足條件的元素
///
/// key
/// lamdba表示式
/// 資料庫序號,不傳預設為0
///
public list
getlistbylambda
<
t>
(string listkey, func
bool
> func,
int db_index =0)
else
}else
}else
}}
C Redis 的基本使用
redis 概述 在我們日常的開發中,無不都是使用資料庫來進行資料的儲存,由於一般的系統任務中通常不會存在高併發的情況,所以這樣看起來並沒有什麼問題,可是一旦涉及大資料量的需求,比如一些商品搶購的情景,或者是主頁訪問量瞬間較大的時候,單一使用資料庫來儲存資料的系統會因為面向磁碟,磁碟讀 寫速度比較慢...
Html幫助類使用
這樣寫報錯 using html.beginform form主體2 body 這樣寫正確 using html.beginform form主體2 body 在 塊中,要麼是c 要麼是html標籤,不能直接寫純文字,純文字須包裹在html標籤內。但如果需要在 塊中直接輸出純文字而不帶html標籤,...
C 公共幫助類 Image幫助類
大家知道,開發專案除了資料訪問層很重要外,就是common了,這裡就提供了強大且實用的工具。c 公共幫助類 convert幫助類 image類 using system using system.collections.generic using system.text using system.i...