Stackexchange.redis: Comment récupérer plusieurs valeurs dans la liste si nous passons plusieurs clés dans une liste ?

Créé le 30 sept. 2014  ·  3Commentaires  ·  Source: StackExchange/StackExchange.Redis

J'ai besoin de transmettre une liste de clés et j'ai besoin d'obtenir la liste des valeurs pour ces clés. Est-il possible de récupérer l'essentiel des valeurs clés ?

cache.Set("A", Objet1);
cache.Set("B", Objet2);
Lister> redisbulkretrieve ;
ListersKeys = nouvelle liste();
sKeys.Add("A");
sKeys.Add("B");

(Lister>)cache.get(sKeys) --> ne fonctionne pas..

pouvez-vous aider à récupérer plusieurs valeurs sous forme de liste si nous transmettons plusieurs clés sous forme de liste.

Commentaire le plus utile

Alors:

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

ou similaire

Tous les 3 commentaires

Et qu'est-ce que "cache" dans cet exemple ? L'API IDatabase a certainement une API multi-clé ici :

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

et une version Async correspondante ; cependant, sans connaître votre type de "cache", je ne peux pas commenter - car cela ne ressemble pas à l'API de SE.Redis

IDatabase cache = connection.GetDatabase();

J'ai besoin de récupérer plusieurs listes d'objets stockés dans Redis en envoyant une liste de clés String.

Alors:

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

ou similaire

Cette page vous a été utile?
0 / 5 - 0 notes