Stackexchange.redis: كيفية استرداد قيم متعددة في القائمة إذا مررنا مفاتيح متعددة في قائمة؟

تم إنشاؤها على ٣٠ سبتمبر ٢٠١٤  ·  3تعليقات  ·  مصدر: StackExchange/StackExchange.Redis

لدي شرط لتمرير قائمة مفاتيح وأحتاج إلى الحصول على قائمة القيم لتلك المفاتيح. هل من الممكن استرداد الجزء الأكبر من القيم الأساسية؟

cache.Set ("A" ، Object1) ؛
cache.Set ("B" ، Object2) ؛
قائمة> redisbulkretrieve ؛
قائمةsKeys = قائمة جديدة() ؛
إضافة sKeys. ("A") ؛
إضافة sKeys. ("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 كومينتر

وما هو "الكاش" في هذا المثال؟ تحتوي واجهة API IDatabase بالتأكيد على واجهة برمجة تطبيقات متعددة المفاتيح هنا:

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

وإصدار مطابق لـ Async ؛ ومع ذلك ، بدون معرفة نوع "ذاكرة التخزين المؤقت" ، لا يمكنني التعليق - لأن ذلك لا يبدو مثل SE.Redis 'API

ذاكرة التخزين المؤقت لقاعدة البيانات = 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 التقييمات