0
StackExchange.RedisからRedisでMSET
を実行する方法はありますか?StackExchange.RedisのMSET
documentationを参照した後、私が書いた以下のコードは、StringSetAsync
を実行して、Redisで複数のキーと値のペアを追加することです。 IDatabase.StringSet(RedisKey[], RedisValue[])
のようなものがありますか?
bool StringSet(KeyValuePair<RedisKey, RedisValue>[] values, When when = When.Always, CommandFlags flags = CommandFlags.None);
だけ(これはあなたがMSET
動作を取得することを意味しており、2番目と3番目のパラメータがデフォルト値であることを意味します)最初のパラメータを渡した:
public void Add(IEnumerable<CacheKeyValue> cacheKeyValues)
{
var tasks = new List<Task>();
foreach(var kv in cacheKeyValues.ToList())
{
tasks.Add(((Task<bool>)DB.StringSetAsync(kv.Key, ((RedisValue)kv.Value))).ContinueWith((b) => kv.Status = true));
}
Task.WaitAll(tasks.ToArray());
}
これはよさそうだ:
async
同等のもあります。私はそれをテストし、答えとしてマークします。セットに複数のKey-Value/Pのペアを追加するのに似たようなものがありますか?私はredis(https://redis.io/commands#set)でも利用できないと思います。その場合、パイプライン化[https://stackexchange.github.io/StackExchange.Redis/PipelinesMultiplexers]を使用できます。 – Brij
あなたはおそらく@Brijの完全に新しい質問を作成することをお勧めします。 – mjwills