Redis 哈希(Hash)表:新增和读取

用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");

posted @ 2020-06-28 17:34  qiFen9  阅读(1306)  评论(0)    收藏  举报