StackExchange.Redis IDatabase.SetScan()未返回游标

时间:2016-05-03 12:33:17

标签: c# redis stackexchange.redis

这是我的代码

 ConnectionMultiplexer plex;
 plex = redisConnectionProvider.GetMultiplexer();
 var db = plex.GetDatabase();
 var values = db.SetScan(key);

我认为SetScan的返回值将是IEnumerable<>其中第一个元素是游标,第二个元素是Redis集合中的一组值。但结果只包含set members-没有游标值。我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

SetScan实际上会返回IEnumerable<RedisValue>

光标将由库内部处理。根据您的参数和服务器功能,它将使用SMEMBERS或SSCAN。

您可以对生成的IEnumerable进行操作,例如:

IEnumerable<RedisValue> values = db.SetScan(key, "a*");
var firstItem = values.First();

将返回以 a 开头的第一个匹配元素。