using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using HZQR.Common; namespace TableDataService.RedisHelp { public class Redis { #region 方法 -> string类型缓存操作 /// /// 写入redis /// /// redis用下标指定数据库 /// redis中的key /// 数据实体对象 /// 有效期,按天 public static void StringSet(int dbNum, string key, object model, int? validDay = null) { RedisHelper redisDb = new RedisHelper(dbNum);//从redis中取 //写入redis,后面的逻辑判断都从redis中取 TimeSpan? ts = null; if (validDay != null) { DateTime dt1 = DateTime.Now; DateTime dt2 = dt1.AddDays(validDay.TryParseToInt());//redis中存放的有效期 ts = dt2 - dt1; } redisDb.StringSet(key, model, ts);//键值对写入redis } public static T StringGet(int dbNum, string key) { RedisHelper redisDb = new RedisHelper(dbNum);//从redis中取 if (redisDb.KeyExists(key))//判断redis缓存中是否存在key { return redisDb.StringGet(key);//根据key取出redis中的缓存 } return default(T); } #endregion #region 方法 -> hash类型缓存操作 /// /// 写入redis /// /// redis用下标指定数据库 /// redis中的key /// 数据实体对象 /// 有效期,按天 public static void HashSet(int dbNum, string key, string dataKey, object model) { RedisHelper redisDb = new RedisHelper(dbNum);//从redis中取 //写入redis,后面的逻辑判断都从redis中取 redisDb.HashSet(key, dataKey, model); } public static T HashGet(int dbNum, string key, string dataKey) { RedisHelper redisDb = new RedisHelper(dbNum);//从redis中取 if (redisDb.HashExists(key, dataKey))//判断redis缓存中是否存在key { return redisDb.HashGet(key, dataKey);//根据key取出redis中的缓存 } return default(T); } #endregion } }