/// <summary> /// 将值 value 关联到 key ,并将 key 的生存时间设为 milliSeconds (以毫秒为单位)。 /// </summary> /// <param name="keyName">Key名称</param> /// <param name="val">要赋值的值</param> /// <param name="milliSeconds">有效期单位毫秒</param> /// <param name="setType">附加选项</param> /// <remarks>成功完成时,才返回 OK如果设置了 NX 或者 XX ,但因为条件没达到而造成设置操作未执行,那么命令返回空批量回复(NULL Bulk Reply)。</remarks> public void SetByMilliSeconds(string keyName, string val, int milliSeconds, eumSetType setType = eumSetType.None) { Check.IsTure(string.IsNullOrWhiteSpace(keyName), "参数:keyName不能为空"); Check.IsTure(milliSeconds < 1, "参数:milliSeconds必须大于0"); var lstCmdBytes = new List <byte[]> { Commands.Set, keyName.ToUtf8Bytes(), val.ToUtf8Bytes(), Commands.Px, milliSeconds.ToUtf8Bytes() }; switch (setType) { case eumSetType.NX: lstCmdBytes.Add(Commands.Nx); break; case eumSetType.XX: lstCmdBytes.Add(Commands.Xx); break; } _redisClient.SendExpectSuccess(lstCmdBytes.ToArray()); }
/// <summary> /// 将值 value 关联到 key ,并将 key 的生存时间设为 milliSeconds (以毫秒为单位)。 /// </summary> /// <param name="keyName">Key名称</param> /// <param name="val">要赋值的值</param> /// <param name="milliSeconds">有效期单位毫秒</param> /// <param name="setType">附加选项</param> /// <remarks>成功完成时,才返回 OK如果设置了 NX 或者 XX ,但因为条件没达到而造成设置操作未执行,那么命令返回空批量回复(NULL Bulk Reply)。</remarks> public void SetByMilliSeconds(string keyName, string val, int milliSeconds, eumSetType setType = eumSetType.None) { Check.IsTure(string.IsNullOrWhiteSpace(keyName), "参数:keyName不能为空"); Check.IsTure(milliSeconds < 1, "参数:milliSeconds必须大于0"); var lstCmdBytes = new List<byte[]> { Commands.Set, keyName.ToUtf8Bytes(), val.ToUtf8Bytes(), Commands.Px, milliSeconds.ToUtf8Bytes() }; switch (setType) { case eumSetType.NX: lstCmdBytes.Add(Commands.Nx); break; case eumSetType.XX: lstCmdBytes.Add(Commands.Xx); break; } _redisClient.SendExpectSuccess(lstCmdBytes.ToArray()); }