我正在使用此程序包Microsoft.Extensions.Caching.Redis
。
将tModel
传递给缓存设置和获取的方法是什么。
public class TestModel
{
public int test1 { get; set; }
public string test2 { get; set; }
}
var tModel = new TestModel();
tModel.test1 = 1;
tModel.test2 = "abc";
_distributedCache.Set("model", tModel);
答案 0 :(得分:1)
我会将数据序列化为JSON并将其保存为字符串:
using Newtonsoft.Json;
// ...
// Set
var jsonData = JsonConvert.SerializeObject(tModel);
_distributedCache.SetString("model", jsonData);
// Get
var jsonData = _distributedCache.GetString("model");
var tModel = JsonConvert.DeserializeObject<TestModel>(jsonData);
注意我在这里使用了GetString
和SetString
扩展方法,而不是使用和返回字节的低级Get
和Set
方法。还有异步方法。