DynamoDB - GetItem请求不起作用

时间:2015-07-02 20:58:44

标签: c# .net amazon-web-services amazon-dynamodb aws-sdk

我有一张名为" 流派 "在DynamoDB中。

到目前为止,它有两个项目:

| language (Hash Key) | name (Range Key)        |
-------------------------------------------------
| S: "en"             | S: "Comedy"             |
-------------------------------------------------
| S: "es"             | S: "Comedia"            |

我使用 AWSSDK 2.3.44.0 进行 .NET

GetItemRequest request = new GetItemRequest();
request.TableName = "genres";
request.Key = new Dictionary<string, AttributeValue>()
{
     { "language", new AttributeValue() { S = "en" } },
     { "name", new AttributeValue() { S = "Comedy" } }
}
GetItemResponse response = await _dbClient.GetItemAsync(request);

如您所见,我正在填写所有必需的信息以完成操作。事实上,它似乎是这样做的,因为没有抛出异常。

但是,在检查了我的response变量后,我发现response.Item为空,就好像它在我的表中找不到该项,即使所有键都正确。< / p>

我知道可能languagename是保留字,所以我尝试使用Expression Attribute Names创建别名,但表达式名称只能用于表达式,而不能用于关键声明。

这里发生了什么?

1 个答案:

答案 0 :(得分:0)

尝试将其他属性放入行中。猜测它的工作 - 你只是没有其他任何东西可以显示。