关于将 bookleeve 与 protobuf-net 结合使用,我有一些相当基本的问题。现在我已经实现了一个单例类来管理连接,因此我按照推荐的方式多次重复使用相同的连接。现在我有几个关于实际使用组合的问题:
- “db” int 和“key” 字符串的区别/重要性是什么?
- 如何使用 protobuf-net 将一堆对象序列化为 SortedSet/List?
- 如何使用 protobuf-net 从 SortedSet/List 反序列化一堆对象?
我在想我应该使用 Range() 方法进行检索:
public IList<T> RetrieveAllAsList()
{
var conn = RedisConnectionManager.Current.GetConnection();
conn.Open();
int length = (int)conn.Lists.GetLength(10, "idk").Result;
byte[][] data = conn.Lists.Range(10, "idk", 0, length-1).Result;
List<T> output = new List<T>();
for (int i = 0; i < data.Length; i++)
{
using (MemoryStream ms = new MemoryStream(data[i]))
{
output.Add(Serializer.Deserialize<T>(ms));
}
}
conn.Close(false);
return output;
}
我将不胜感激在这件事上的任何帮助。谢谢你。