c# - 在 dynamodb 中使用 context.fromquery 查询时限制不起作用

标签 c# amazon-dynamodb

使用c#,代码是这样的

        DynamoDBContext context = new DynamoDBContext(client, new DynamoDBContextConfig() { TableNamePrefix = "lalala" });

        QueryFilter filter = new QueryFilter();
        filter.AddCondition("Userid", QueryOperator.Equal, "hashkeyvalue");
        QueryOperationConfig queryConfig = new QueryOperationConfig
        {
            Filter = filter,
            Select = SelectValues.AllProjectedAttributes,
            Limit = 1,
            IndexName = "Userid-UpdatedAtTimestamp-index"
        };
        try
        {
            var result = await context.FromQueryAsync<IAPRecord>(queryConfig).GetRemainingAsync();
            int ccc = result.Count;
        }
        catch (Exception ex)
        {
            throw new ArgumentException(ex.Message + ex.InnerException);
        }

ccc 应该是 1,但现在它等于整个集合,就好像 Limit=1 不存在一样。

需要帮助!!

最佳答案

已解决。

var query = context.FromQueryAsync<IAPRecord>(queryConfig);
var result = await query.GetNextSetAsync();
int ccc = result.Count;

显然,无论您在查询中设置了多少限制参数,GetRemainingAsync 都会获取所有结果。 相反,我们应该使用 GetNextSetAsync。

关于c# - 在 dynamodb 中使用 context.fromquery 查询时限制不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46445899/

相关文章:

c# - 显式本地化

java - Java 中的 try-catch-finally block

用于 dynamodb 的 Golang 包,支持 map 、 list 和 JSON

ios - 发电机 "Serialized object is not a valid json Object"

c# - 无法使用 Properties.Settings 从 app.config 中读取

c# - 在 session 中存储登录名和密码哈希是否安全?

c# - 使用 WPF C# 同时对两个 UIElement 进行动画处理

c# - 使用 file.copy() 移动 zip 文件

node.js - 如何将batchWriteItem 与Node.js 结合使用来查询AWS DynamoDB?

amazon-web-services - 需要定期更新时使用 Dynamo 表的最佳实践