У меня есть таблица в DynamoDB.
Table name test-vod
Primary partition key guid (String)
Primary sort key -
С дополнительными атрибутами, как вы можете видеть ниже.

Цель состоит в том, чтобы запросить таблицу, используя один из столбцов, не являющихся первичным ключом srcVideo
, для достижения sh того, что мы создали второй локальный индекс.

И используя низкоуровневый API из пакета DynamoDB SDK NuGet, мы запрашиваем следующий код (открытый для других параметров вместо низкоуровневого API).
var queryRequest = new QueryRequest
{
TableName = $"{_environmentName}-vod",
IndexName = "srcVideo-index",
ScanIndexForward = true,
KeyConditionExpression = "srcVideo = :v_srcVideo",
ExpressionAttributeValues = new Dictionary<string, AttributeValue>()
{
{":v_srcVideo",new AttributeValue {S = inputMediaKey}}
}
};
var response = await _client.QueryAsync(queryRequest, cancellationToken);
// Does not exist
var hlsUrl = response.Items
.SelectMany(p => p)
.SingleOrDefault(p => p.Key.Equals("hlsUrl"));
Мне интересно получить 3 атрибута (поля) из ответа hlsUrl, dashUrl, workflowsStatus
, но все 3 отсутствуют, ответ содержит словарь с количеством ключей 27, это только 27 из 35 доступных столбцов.

Я пытался использовать ProjectionExpression и другие комбинации запросов, но безуспешно.