本节使用 C# WinForms 基于StackExchange.Redis封装Redis缓存
打开VS 创建一个winform项目,然后使用nuget 安装依赖包

安装依赖包
- StackExchange.Redis
.NET生态最主流的Redis客户端开源组件,用于和Redis服务通信。
Github仓库:https://github.com/StackExchange/StackExchange/StackExchange.Redis
Redis本身提供TCP协议,理论上可以手写Socket直接通信,但工业开发几乎都使用成熟第三方库。 - Newtonsoft.Json(Json.NET)
用于对象序列化,把任意对象转为JSON字符串,再转成字节数组存入Redis;读取时反向反序列化。
必须通过NuGet安装,代码中JsonConvert.SerializeObject就是来自这个库。
Redis封装方法
// 写入缓存:存入对象,设置过期分钟
private bool Set(string key, object data, int cacheTime)
{
if (data == null)
{
return false;
}
var entryBytes = Serialize(data);
var expiresIn = TimeSpan.FromMinutes(cacheTime);
return db.StringSet(key, entryBytes, expiresIn);
}
// 对象序列化:实体对象 → UTF8字节数组
private byte[] Serialize(object data)
{
var json = JsonConvert.SerializeObject(data);
return Encoding.UTF8.GetBytes(json);
}Code language: PHP (php)