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

How do I store customer class object data into Redis Cache?

redis cache中我们可以将数据存入key value pair,

how do I store full object data ?

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

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);
}

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

另一种方法是使用 Redis 数据结构为您的自定义对象建模。大多数情况下,这是使用 Hash 数据类型完成的,但是,根据对象的属性和您的 read/write 要求,您可以 want/need 使用其他类型。

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