public async Task <ResultData> EditRedisDevInfo([FromBody] RedisDataModel model) { try { if (model.TTLTime <= DateTime.Now) { return(ResultData.CreateResult("-1", "TTL过期时间不能早于当前日期", null)); } string redisConn = await GetRedisDBAddr(model.RedisAddr); RedisHelper redisHelper = new RedisHelper(redisConn); var timeSpan = model.TTLTime - DateTime.Now; var result = await redisHelper.Set(model.Type, model.Key, model.Value, timeSpan, model.RedisDB); if (result.Item1) { return(ResultData.CreateSuccessResult()); } else { return(ResultData.CreateResult("-1", $"修改失败,失败信息为:{result.Item2}", null)); } } catch (Exception ex) { return(ResultData.CreateResult("-1", $"异常信息:{ex.Message}", null)); } }
public async Task <IActionResult> EditRedisDevInfo(string redisaddr, int redisdb, string searchkey) { ViewBag.RedisAddr = redisaddr; ViewBag.RedisDB = redisdb; string redisConn = await GetRedisDBAddr(redisaddr); RedisHelper redisHelper = new RedisHelper(redisConn); RedisDataModel redisDataModel = new RedisDataModel(); redisDataModel.Type = "String"; redisDataModel.Key = searchkey; redisDataModel.Value = redisHelper.GetValue(searchkey, redisdb); TimeSpan?time = redisHelper.GetExpireTime(searchkey, redisdb); if (time == null) { redisDataModel.TTLTime = null; } else { redisDataModel.TTLTime = DateTime.Now.Add((TimeSpan)time); } return(View(redisDataModel)); }
/// <summary> /// 获取全部的键 /// </summary> /// <returns></returns> //public List<RedisDataModel> GetAllKeys() //{ // List<RedisKey> redisKeys = new List<RedisKey>(); // foreach (var endPoint in this.GetRedisConnection().GetEndPoints()) // { // var server = this.GetRedisConnection().GetServer(endPoint); // if (!server.IsReplica) // { // redisKeys.AddRange(server.Keys()); // } // } // List<RedisDataModel> models = new List<RedisDataModel>(); // foreach (var key in redisKeys) // { // RedisDataModel model = new RedisDataModel(); // model.Key = key; // model.Type = this.GetType(key).ToString(); // model.TTL = this.GetExpireTime(key); // models.Add(model); // } // return models; //} /// <summary> /// 获取查询的键(模糊查询) /// </summary> /// <returns></returns> public List <RedisDataModel> GetKeys(int db = -1, string pattern = "*") { List <RedisKey> redisKeys = new List <RedisKey>(); foreach (var endPoint in this.GetRedisConnection().GetEndPoints()) { var server = this.GetRedisConnection().GetServer(endPoint); if (!server.IsReplica) { redisKeys.AddRange(server.Keys(db, pattern)); } } List <RedisDataModel> models = new List <RedisDataModel>(); foreach (var key in redisKeys) { RedisDataModel model = new RedisDataModel(); model.Key = key; model.Type = this.GetType(key, db).ToString(); model.TTL = this.GetTTL(key, db); models.Add(model); } return(models); }