示例#1
0
        /// <inheritdoc/>
        public async Task<Dictionary<string, TimeToLiveResult>> GetTimeToLivesAsync(string[] keys)
        {
            var redisResult = await GetRetryPolicyAsync().ExecuteAsync<RedisResult>(() => GetDatabase().ScriptEvaluateAsync(LuaScripts.GetTtlsScript(), keys: keys.Select(x => (RedisKey)x).ToArray())).ConfigureAwait(false);

            if (redisResult == null)
            {
                throw new InvalidOperationException("Lua script did not return anything.");
            }

            return ConvertRedisResultTimeToLiveResults(keys, redisResult);
        }
示例#2
0
        /// <inheritdoc/>
        public Dictionary<string, TimeToLiveResult> GetTimeToLives(string[] keys)
        {
            var redisResult = GetRetryPolicy().Execute<RedisResult>(() => GetDatabase().ScriptEvaluate(LuaScripts.GetTtlsScript(), keys: keys.Select(x => (RedisKey)x).ToArray()));

            if (redisResult == null)
            {
                throw new InvalidOperationException("Lua script did not return anything.");
            }

            return ConvertRedisResultTimeToLiveResults(keys, redisResult);
        }