DynamoDB查询返回零结果

我正在尝试查询DynamoDB表,以根据其URL查找产品。


该表具有三个字段:“标题”,“描述”和“网址”。


var credentials = new BasicAWSCredentials(awsDBLogins.AccessKey, awsDBLogins.SecretKey);

var client = new AmazonDynamoDBClient(credentials, RegionEndpoint.USEast2);


var context = new DynamoDBContext(client);

Table table = Table.LoadTable(client, "Products");

有了上面的代码,我就可以连接到表格了。然后,我执行以下查询,该查询不返回任何错误,但是结果列表为空。我期望Url与“ test”匹配的地方返回一个结果。


var productUrl = "test"

QueryOperationConfig config = new QueryOperationConfig()

{

    Filter = new QueryFilter(productUrl, QueryOperator.Equal, "Url"),


    AttributesToGet = new List<string>

    { "Title", "Description", "Url" },


    ConsistentRead = true,

};


var ProductItem = table.Query(config);

尽管这在代码中不起作用,但是当从AWS Web门户/控制台查看项目列表时,我能够在数据库中找到该条目,因此我知道该条目存在。


我在过滤器中犯了一个错误吗?


胡说叔叔
浏览 173回答 1
1回答

慕村9548890

我认为哈希键的名称和值应该颠倒。第一个参数是键名,第三个参数是值。Filter&nbsp;=&nbsp;new&nbsp;QueryFilter("Url",&nbsp;QueryOperator.Equal,&nbsp;productUrl)
打开App,查看更多内容
随时随地看视频慕课网APP