質問: C#のWebApiでJsonデータを返却する際に、まとめてではなく何回かに分割して返却したいのですが可能でしょうか? 今はHttpClientのSendAsyncを使ってクライアントから送られてきた検索条件をもとにデータを取得し、1000件であれば1000件まとめて返しています。 可能であれば100件ずつとか返却し、クライアント側で進捗率みたいなものを表示できればと考えています。 ``` [HttpPost] [ActionName("json")] public HttpResponseMessage GetJson([FromBody]string condition) { //データ取得処理 return Request.CreateResponse(System.Net.HttpStatusCode.OK, "ここに入るデータを何回かに分割して返却したい"); } ``` 以下、開発環境 Visualstudio2013 .netFrameWork:4.7.2
回答: APIが引数で取得を開始する位置と件数を受り、戻り値の中に「続きがあるか」の情報を持たせるインターフェイスにしておいて、クライアント側から「何件目から何件(質問の例では100件固定だけど)取得」という呼び出しを必要なだけ回せばいいのでは。(そういう作りは結構あると思う)