用nuget引入StackExchange.Redis
類庫
新增操作
HashEntry hash1 = new HashEntry("foo1","bar1");
HashEntry hash2 = new HashEntry("foo2", "bar2");
HashEntry hash3 = new HashEntry("foo3", "bar3");
HashEntry[] hash = new HashEntry[] { hash1,hash2,hash3 };
db.HashSet("key7",hash);
結果如下:
HashEntry hash1 = new HashEntry("foo1","barZz");
對同個鍵插入新值會替換原來的值
讀取操作
已知Redis 存在哈希表key6,內容如下:
RedisValue[] key5fofo= db.HashValues("key6");//查詢鍵下所有值,不包含filed
RedisValue[] key5bar = db.HashGet("key6",new RedisValue[] { "name","Sex","Age" }); //根據提供僅有的字段名查找對應值
RedisValue[] key5barbar = db.HashGet("key6", new RedisValue[] { "Name", "Sex", "Age" });
//查找的條件字段大小寫敏感,由於key6存的是name而不是Name,所以實際查詢結果被空的RedisValue取代
HashEntry[] key5foo = db.HashGetAll("key6");
//返回的結果類型HashEntry,同時含有字段和值,即查詢所有字段和值,不需要像HashGet提供查詢字段
HashEntry[] key5foofoo = db.HashGetAll("key7");
//獲取不存在key時返回長度為0的HashEntry,無法從中讀取到值
查找鍵
var keys= db.HashKeys("key7");