Stackexchange.redis: リストに複数のキーを渡す場合、リスト内の複数の値を取得するにはどうすればよいですか?

作成日 2014年09月30日  ·  3コメント  ·  ソース: StackExchange/StackExchange.Redis

キーのリストを渡す必要があり、そのキーの値のリストを取得する必要があります。 キー値の大部分を取得することは可能ですか?

cache.Set( "A"、Object1);
cache.Set( "B"、Object2);
リスト> redisbulkretrieve;
リストsKeys=新しいリスト();
sKeys.Add( "A");
sKeys.Add( "B");

(リスト>)cache.get(sKeys)->機能しません。

複数のキーをリストとして渡す場合、複数の値をリストとして取得する方法を教えてください。

最も参考になるコメント

それで:

var keys = new RedisKey[] { "A", "B" };
var values = cache.StringGet(keys);
var a = (string)values[0];
var b = (byte[])values[1];

または類似

全てのコメント3件

そして、この例の「キャッシュ」とは何ですか? IDatabase APIには、確かにマルチキーAPIがあります。

RedisValue[] StringGet(RedisKey[] keys, CommandFlags flags = CommandFlags.None);

一致するAsyncバージョン。 ただし、「キャッシュ」タイプの知識がなければ、コメントすることはできません。これは、SE.RedisのAPIのようには見えないためです。

IDatabaseキャッシュ=connection.GetDatabase();

文字列キーのリストを送信して、Redisに保存されているオブジェクトの複数のリストを取得する必要があります。

それで:

var keys = new RedisKey[] { "A", "B" };
var values = cache.StringGet(keys);
var a = (string)values[0];
var b = (byte[])values[1];

または類似

このページは役に立ちましたか?
0 / 5 - 0 評価