我可能正在处理这一切都错了,但我想使用 REDIS 位图来跟踪我的应用程序中的活动。我有一段代码如下:
using (var conn = new RedisConnection("localhost"))
{
conn.Open();
var b1 = conn.Strings.SetBit(1, "test:2012-07-25", 1, true);
conn.Wait(b1);
var b2 = conn.Strings.SetBit(1, "test:2012-07-25", 3, true);
conn.Wait(b2);
var arr = conn.Strings.Get(1, "test:2012-07-25");
conn.Wait(arr);
BitArray bits = new BitArray(arr.Result);
}
我可以毫无问题地添加条目(b1 和 b2)。但是,当我尝试将位图作为位数组从服务器取回时,它无法正常工作(我得到一个值,但设置的位完全不正确)。我假设我在使用 Strings.Get 函数尝试返回位时做错了,但我不知道该怎么做。唯一明显的方法是在我感兴趣的每个日期对 getbit 进行单独调用,但这似乎会给服务器带来大量往返。任何帮助,将不胜感激!