我正在使用servicestack C#驱动程序来连接在6379中运行的redis数据库。 我想从redis数据库(实际上是缓存)中检索(GET / READ)所有密钥及其值。 我必须在redisdb中更新两个键及其值,是否可以在不使用列表或散列类型的情况下进行更新?
我想知道如何添加多个键和值,以及一次更新多个键。
答案 0 :(得分:0)
答案 1 :(得分:0)
检索所有密钥的最有效方法是使用SCAN API's,例如:
var allKeys = new List<string>();
using (var redis = redisManager.GetClient())
{
foreach (var key in redis.ScanAllKeys())
{
allKeys.Add(key);
}
}
您可以使用GetValues()
获取所有值以返回值列表或GetValuesMap()
以返回键值字典,例如:
var allKeyAndValues = redis.GetValuesMap(allKeys);
但是根据您所拥有的按键数量,您需要批量获取它们。
同样,您可以使用SetValues()
设置多个键和值,例如:
redis.SetValues(allKeysAndValues);