如何将客户类对象数据存储到 Redis 缓存中?

Neo*_*Neo 2 asp.net-mvc caching redis stackexchange.redis

redis cache我们可以将数据存储到key value pair

如何存储完整的对象数据?

我想store customer informationredis cache 我尝试谷歌并发现以下内容但我想知道如何使用它任何人都可以详细说明吗?

public bool Add<T>(string key, T value, DateTimeOffset expiresAt) where T : class
{
    var serializedObject = JsonConvert.SerializeObject(value);
    var expiration = expiresAt.Subtract(DateTimeOffset.Now);

    return database.StringSet(key, serializedObject, expiration);
}

public T Get<T>(string key) where T : class
{
    var serializedObject = database.StringGet(key);

    return JsonConvert.DeserializeObject<T>(serializedObject);
}
Run Code Online (Sandbox Code Playgroud)

Ita*_*ber 5

将对象序列化为字符串并将其按原样存储在 Redis 中当然是一种方法。

另一种方法是使用 Redis 数据结构对自定义对象进行建模。大多数情况下,这是使用 Hash 数据类型完成的,但是,根据对象的属性和您的读/写要求,您可能想要/需要使用其他类型。

还有一些帮助程序库几乎可以自动为您执行此操作 - 它们通常使用首字母缩略词ORM(Object Redis Mapper)或其变体。我对 .NET 场景不太熟悉,但这里有一个您可以研究的可能方向:https : //github.com/ServiceStack/ServiceStack.OrmLite