探しているのはincludeTotalCount
、テーブル/クエリオブジェクトのメソッドです(残念ながら、ドキュメントにはありません。製品チームにバグを報告して修正してもらいます)。
クエリオブジェクトを呼び出すread
と、デフォルトで50(IIRC、数は異なる場合があります)の要素が返され、ナイーブな呼び出しが非常に大きなテーブル内のすべての要素を返すのを防ぎます(したがって、予約済みのサービス、または無料のサービスの割り当てに達している)。したがって、テーブル内のすべての要素を取得し、結果の長さを取得することは正確ではない可能性があります。
テーブル内の要素の数だけが必要な場合は、次のコードを使用できます。ゼロ要素を返し、合計数を返します。
var table = client.getTable('tableName');
table.take(0).includeTotalCount().read().then(function (results) {
var count = results.totalCount;
new Windows.UI.Popups.MessageDialog('Total count: ' + count).showAsync();
});
一部の要素をクエリし、合計数(つまり、ページング用)も含める場合は、適切な呼び出しtake()
とskip()
呼び出しを追加するincludeTotalCount
だけです。