RedisResult, чтобы перечислить C#

Место общения программистов C#
Anonymous
 RedisResult, чтобы перечислить

Сообщение Anonymous »

Я звоню функции Redis, чтобы получить элементы из Redis DB. Однако, поскольку данные являются сбором JSON, я не могу преобразовать набор REDISRESULT, список или даже строку []. Все методы, которые я пытаюсь использовать, не доступны в Redis Stackexchange (пакет в C#). < /P>
string pattern= $"Slips:{obj.Id}:{obj.Team}:{oppositeType}:*";

// Get all elements from Redis
var elEntries = await database.SortedSetRangeByRankAsync(redisKey, 0, -1);

var result = await database.ExecuteAsync("FCALL", "GetEls", 0, redisKey);

//these are some things I've tried
var elements = result.As();

// consider keys as result here
foreach (var key in keys)
{
string json = key.ToString();
if (!string.IsNullOrEmpty(json))
{
var betObject = JsonSerializer.Deserialize(json);
}
}
< /code>
Вот пользовательская функция, которую я получаю результаты от: < /p>
//the custom FCALL looks like this
FUNCTION LOAD "#!lua name=myLib
redis.register_function('GetEls', function(keys, args)
local pattern = args[1]
local cursor = '0'
local bets = {}
repeat
local result = redis.call('SCAN', cursor, 'MATCH', pattern, 'COUNT', 100)
cursor = result[1]
local keysList = result[2]
for _, key in ipairs(keysList)
do
local betJson = redis.call('JSON.GET', key)
if betJson then
table.insert(els, elsJson)
end
end
until cursor == '0' return els
end)"


Подробнее здесь: https://stackoverflow.com/questions/794 ... t-to-listt

Вернуться в «C#»