Redis in .NET Core 入門:(3) Hash


第1篇:https://www.cnblogs.com/cgzl/p/10294175.html

第2篇 String:https://www.cnblogs.com/cgzl/p/10297565.html

 

Hash

Redis的Hash有點像一個對象(object),一個Hash里面可以存多個Key-Value對作為它的field,所以它通常可以用來表示對象。

Hash里面能存放的值也能作為String類型來存儲,如果Hash里面值的類型可以解析為數字,那么也可以進行自增自減等操作。

 

 

主要命令

Hash相關的命令都是以H開頭

 

HSET

HSET 設置Hash里面的值:

格式為:hset hash-key field1 field1value field2 field2value ... 

注:HMSET的功能和HSET貌似是一樣的。

 

關於Hash的key的更實際用法是這樣:

通常在Hash的Key中使用冒號:,這樣可以做出來類似命名空間的效果。

user:1000可以表示ID為1000的用戶。

 

HGET

HGET通過Hash里面的key獲取其對應的值:

 

HGETALL

如果想獲得Hash所有的Key-Value對,那就使用HGETALL

注意其結果是如何顯示的。

 

HMGET

HMSET可以設置Hash里多個Key的值,而HMGET可以通過Hash的多個Key獲取其對應的值:

但是它不會返回Key。

 

HINCRBY

如果Hash里某個Field值的類型可以解析成數值,那么還可以用HINCRBY來做自增:

 

其它命令

其它命令還有HDELHEXISTSHINCRBYFLOATHKEYSHLENHSCANHSETNXHVALS請參照官方文檔自行摸索。

 

用.NET Core操練

准備一個C#對象:

 

然后從網上抄襲了一個C#對象和Redis HashEntry[]之間轉換的工具類:

 

HSET,HGETALL

結果:

 

HGET

結果:

 

HMGET

HMGET是使用HashGet的另一個Overload方法:

結果:

 

HINCRBY

結果:

 

HDEL

結果:

 

HSCAN

HSCAN返回的類型是IEnumerable<HashEntry>

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM