gpt4 book ai didi

azure - 获取 Azure 表行数

转载 作者:行者123 更新时间:2023-12-04 16:24:18 24 4
gpt4 key购买 nike

我是 Azure 表存储新手。我想获取表中的总行数。

目前我正在做这样的事情:-

public List<T> ReadAll(string partitionKey)
{
List<T> entities = new List<T>();

TableQuery<T> query = new TableQuery<T>().Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, partitionKey.ToLower()));
entities = Table.ExecuteQuery(query).ToList();

return entities;
}

当前会读取所有表条目。当记录较少时,这可以正常工作。但我担心当记录增加时,这种方法会很乏味。

还有其他优雅的方法吗?

最佳答案

不幸的是,没有其他方法可以做到这一点。您可以做的一件事是仅使用查询投影仅获取少数属性。这样做的目的是减少响应负载,从而在一定程度上加快操作速度。

为了详细说明我的答案,截至目前,获取实体总数的唯一方法是获取所有实体。上面的代码获取实体的所有属性,这并不是真正需要的,因为您只对获取实体的数量感兴趣。这就是为什么我说您只获取 PartitionKey、RowKey 和 Timestamp 属性。要仅获取属性的子集,您可以使用查询投影并指定要获取的属性列表(在我们的示例中为PartitionKey、RowKey 和 Timestamp)。为此,只需将您的查询修改为:

TableQuery<T> query = new TableQuery<T>().Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, partitionKey.ToLower())).Select(new List<string> {"PartitionKey", "RowKey", "Timestamp"});

关于azure - 获取 Azure 表行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28667601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com