gpt4 book ai didi

c# - StackExchange.Redis可以用来存储POCO吗?

转载 作者:IT王子 更新时间:2023-10-29 05:54:58 38 4
gpt4 key购买 nike

我正在尝试使用两个著名的 C# 驱动程序来评估 Redis ServiceStackStackExchange .不幸的是,我不能使用 ServiceStack,因为它不是免费的。现在我正在尝试 StackExchange。

有谁知道我是否可以使用 StackExchange.Redis 保留 POCO?

最佳答案

StackExchange.Redis 可以存储Redis Strings ,它们是二进制安全的。这意味着,您可以使用您选择的序列化技术轻松地序列化 POCO 并将其放入其中。

以下示例使用 .NET BinaryFormatter .请注意,您必须使用 SerializableAttribute 装饰您的类才能使其正常工作。

示例集合操作:

PocoType somePoco = new PocoType { Id = 1, Name = "YouNameIt" };
string key = "myObject1";
byte[] bytes;

using (var stream = new MemoryStream())
{
new BinaryFormatter().Serialize(stream, somePoco);
bytes = stream.ToArray();
}

db.StringSet(key, bytes);

获取操作示例:

string key = "myObject1";
PocoType somePoco = null;
byte[] bytes = (byte[])db.StringGet(key);

if (bytes != null)
{
using (var stream = new MemoryStream(bytes))
{
somePoco = (PocoType) new BinaryFormatter().Deserialize(stream);
}
}

关于c# - StackExchange.Redis可以用来存储POCO吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27857945/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com