1

我的排序命令是
“SORT hot_ids by no_keys GET # GET msg: ->msg GET msg: ->count GET msg:*->comments”

它在 redis-cli 中工作正常,但它不会在 RedisClient 中返回数据。结果是一个字节[][],结果的长度是正确的,但是数组的每个元素都是空的。

redis 的响应是 ...
$-1
$-1
...

c#代码是

data = redis.Sort("hot_ids ", new SortOptions()
{                    
      GetPattern = "# GET msg:*->msg GET msg:*->count GET msg:*->comments",
      Skip = skip,
      Take = take,
      SortPattern = "not-key"
 });
4

1 回答 1

0

Redis Sort 用于IRedisClient.GetSortedItemsFromList,例如来自RedisClientListTests.cs

[Test]
public void Can_AddRangeToList_and_GetSortedItems()
{
    Redis.PrependRangeToList(ListId, storeMembers);

    var members = Redis.GetSortedItemsFromList(ListId, 
      new SortOptions { SortAlpha = true, SortDesc = true, Skip = 1, Take = 2 });

    AssertAreEqual(members, 
      storeMembers.OrderByDescending(s => s).Skip(1).Take(2).ToList());
}

您可以在 redis-cli 中使用MONITOR命令来帮助诊断和查看 ServiceStack Redis 客户端向 redis-server 发送的请求。

于 2013-07-09T16:07:31.617 回答