2012-06-22 5 views
1

В документации Redis, когда вы вызываете операцию Get, и ключ не существует, он должен возвращать Nil. (Источник: http://redis.io/commands/get)Поведение клиента ServiceStack Redis для несуществующего ключа

Как клиент ServiceStack обрабатывает это? Повторяется ли оно null, или мне нужно использовать Exists, ContainsKey?

Есть ли другой подход, чтобы проверить, существует ли ключ и возвращает значение, используя один запрос?

ответ

5

Если вы попытаетесь получить ключ, который не существует, вы получите нуль.

Есть много разных способов, чтобы получить ключи, используя IRedisClient, но вот пример:

GetValue()

Если вы заинтересованы IRedisNativeClient идет непосредственно против металла в 1-1 команды вылепить.

Вы можете сделать несколько вещей в одном запросе, используя соединительную линию или транзакцию. Например:

using(var pipeline = client.CreatePipeline()) 
{ 
    pipeline.QueueCommand(r => r.GetSetCount("key1"), count => count1 = count);     
    pipeline.QueueCommand(r => r.GetSetCount("key2"), count => count2 = count); 
    pipeline.QueueCommand(r => r.GetSetCount("key3"), count => count3 = count); 
    pipeline.Flush(); 
} 
Смежные вопросы