2016-12-19 11 views
0

私はAzureアプリサービスクエリで50行のデフォルトの制限を増やすためにこのコードを見つけました。Azureモバイルアプリケーションのサービスクエリの制限

table.read(function (context) { 
    context.query.take(1000); 
    return context.execute(); 
}); 

ただし、これはすべてのクライアントサイドページのクエリ(iOSとJava SDK)をテーブルに含めることを意味します。フェッチ制限を25に設定すると、明らかに25行ではなく1000行が返されます。

私の質問は です。context.query.take(1000)をクライアント側?つまり、レコードをリストしている場合、バッチ処理で50行を返すようにします。私がテーブルを検索している場合は、1000以上の値を返します。

ありがとうございました。

答えて

0

返される最大行数は、maxTopオプションではなく、サーバー上のpageSizeオプションによって決定されるノードSDKに問題がありました。これは、本日リリースしたSDKのバージョン4.0.0で解決されました。

このバージョン(npm install [email protected] --save)とクライアントから要求された行数にアップグレードします。

+0

ちょっとしたデール、簡単な説明 - "クライアントから要求された行数"については、MSQuery.fetchOffsetとMSQuery.fetchLimitの両方を適切に設定することを意味しますか? – krecious

+0

私は特にiOSクライアントに精通していませんが、それは正しいと思います - 私はOData $ skipと$ topクエリオプションに対応していると思います。 –

+0

乾杯!その飛行色。 :) – krecious

0

サーバー側とクライアント側の両方で調整する必要があります。 docs.microsoft.comのHOWTO文書をチェックアウト:

サーバーの場合

ASP.NET: 公共のgetAllに[EnableQuery(MaxTop=1000)]を追加()メソッドを使用します。

Node.js: テーブル定義にmaxTopの値を設定します。

+0

こんにちはAdrian、node.jsの[EnableQuery(PageSize = 500)]と同等のものは何ですか? – krecious

+0

テーブル定義ファイル 'table.maxTop = 500;'にあります。 –

関連する問題