我想使用MessagePack
,ZeroFormatter
或protobuf-net
序列化/反序列化通用列表并使用客户端将其存储在 Redis 中stackexchange.redis
。
现在我使用该StringSetAsync()
方法存储一个 JSON 字符串。但我找不到任何关于如何byte[]
在 Redis 中存储 a 的文档。
我想使用MessagePack
,ZeroFormatter
或protobuf-net
序列化/反序列化通用列表并使用客户端将其存储在 Redis 中stackexchange.redis
。
现在我使用该StringSetAsync()
方法存储一个 JSON 字符串。但我找不到任何关于如何byte[]
在 Redis 中存储 a 的文档。
StackExchange.Redis
用于RedisValue
表示存储在 Redis 中的不同类型的值,因此它提供了隐式转换运算符(byte[]
除其他外)。请仔细阅读StackExchange.Redis / Basic Usage / Values,您可以在该章的第三句中找到
但是,除了文本和二进制内容之外,...
这基本上意味着您可以IDatabase.StringSet()
用来存储一个基本值(Redis 通常将其视为“字符串”,因为还有其他类型,如集合、哈希等)——无论是字符串还是字节数组。
using (var multiplexer = ConnectionMultiplexer.Connect("localhost:6379"))
{
byte[] byteArray = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06 };
var db = multiplexer.GetDatabase();
db.StringSet("bytearray", byteArray);
}