.net core 編寫通用的Redis功能
在 Package項目裡面,添加包:StackExchange.Redis:

在Common工具檔案夾下,建立 Wsk.Core.Redis類庫項目,并建立 RedisManage 類和對應接口 IRedisManage,如下圖。然後,在該項目裡面,引用共用包項目Wsk.Core.Package,用以使用Redis有關功能。
在RedisManage類裡面,新增幾個用于連接配接Redis配置的全局變量,以及一個構造函數:
在配置檔案裡面,建立Redis的有關配置資訊:
配置的Json文本:
其中,Name是别名,可以任意起。Ip是Redis的服務端位址,例如安裝本地,就是127.0.0.1,端口号Port預設是6379,密碼可以通過Redis安裝的根目錄下的配置檔案進行設定,Timeout是連接配接的逾時時間,Db是使用Redis的DB區,一般Redis的DB區預設是0到15。注意:此處的配置使用的是數組,用于将來進行Redis分布式操作的可拓展。
看下redis安裝目錄下的配置檔案局部一覽:
如果打算修改該配置檔案來實作修改有關的配置資訊,但是沒有效果,注意在windows服務裡面把redis服務進行重新啟動。如果還不行,就把另外一個conf配置檔案也做同樣的操作,然後再重新開機redis服務。
接着,在解決方案下,建立一個檔案夾,叫DataEntities,該檔案夾當做将來存放各種實體類或有關項目的目錄。現在咱們在該建立的檔案夾下,建立一個類庫項目:Wsk.Core.Entity,然後建立一個實體類,叫RedisConfig,用于讀取到配置檔案的Redis資訊進行指派使用:
回到Redis類庫項目,在RedisManage類裡面,添加一個方法ReadRedisSetting,用于讀取該配置資訊,并指派給ConfigurationOptions類:
ReadRedisSetting代碼:
View Code
然後,建立一個方法ConnectionRedis,用于連接配接Redis:
方法代碼:
在構造函數裡面,進行Redis連接配接的實作:
現在,做個簡單的測試,建立一個Set方法和一個GetValue方法,用于測試效果:
在IRedisMagane接口裡面,添加以上有關的接口方法:
現在轉到啟動項目上,啟動項目新增對Wsk.Core.Redis項目的引用,并且在WskService類下面,新增對剛剛新增的Redis管理類的依賴注入的注冊:
現在,在控制器裡面,添加有關構造函數的依賴注入,然後做個實踐,驗證下是否成功。
先改寫控制器内容,先設定一對key/value,然後進行讀取并傳回:
啟動項目,輸入Hello Redis! ,然後檢視傳回對應的内容:
我們打開Redis管理用戶端看看,是不是可以看見有這個值:
因為我們配置的是Db = 3,是以在Db3這個地方,可以看見我們的Key,點選Tesk,即可在右邊視窗看見對應的内容。說明Redis操作成功。
最後,咱們對Redis管理類進行一些其他功能的添加,以及接口方法的添加,用于完善它的功能鍊,包括移除、讀取實體資料、清空、異步操作等。以下截圖為對應的接口方法展示:
接口部分源碼:
接口實作部分的整體源碼:
由于時間關系,就不一一列舉各自的功能了,各位大佬們可以自行嘗試。
最後,說個小竅門:Key值如果使用冒号,在用戶端上面檢視就會自動變成分層結構。舉個例子,改寫控制器,原本設定的Test這個Key,改寫為Test:Wesky:
然後,啟動程式,讓他執行一下,用于生成一條記錄,例如此處我寫入:Hello Key’s Rules:
由此可見,Key值分層顯示了。在一些場合下,可以使用冒号來分隔開不同層級的Key,以便于在用戶端檢視。
至此,結束,歡迎打賞、評論和點贊。
版權所有,轉載請注明出處:https://www.cnblogs.com/weskynet/p/14847526.html
備注:如果有需要Redis、以及Redis安裝包的,以及安裝教程,可以加以下的QQ群進行擷取和咨詢。
歡迎加入QQ群:
群号:1079830632