在redis cache
我们可以将数据存储到key value pair
,
如何存储完整的对象数据?
我想在store customer information
中redis 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);
}
答案 0 :(得分:3)
将对象序列化为字符串并将其存储在Redis中当然是一种方法。
另一种方法是使用Redis数据结构为自定义对象建模。大多数情况下,这是使用哈希数据类型完成的,但是,根据对象的属性和读/写要求,您可能需要/需要使用其他类型。
还有一些助手库几乎可以自动执行此操作 - 它们通常使用首字母缩写ORM
(Object Redis Mapper)或其变体。我对.NET场景并不太熟悉,但这里有一个可以研究的方向:https://github.com/ServiceStack/ServiceStack.OrmLite