webservice的新手 - 如何获取页数

时间:2015-12-25 01:30:57

标签: c# json web-services

我对网络服务很陌生,所以请提供一个完整的初学者的答案。

我正在编写一个使用json webservice数据的应用程序。但该服务可能会返回15,20,200,500,1000 ......记录。

我需要把它们全部搞定。

baseURI可能是这样的:

http://api.service.com/json/cars/search?&c=suv&l=49.263569,-122.9847682&within=20&units=km

我知道服务会返回这样的内容:

{
  "total_items": "205",
  "page_number": "1",
  "page_size": "10",
  "page_count": "20",
  "cars": {
    "car": [
      { ... },
      { ... },
      ...
      { ... }
    ]
  }
}

所以,我可以看到每页有10条记录,总共有20页。但是只有在我发出第一个获取数据的请求后才知道这一点。

这是我的问题: 从桌面应用程序获取所有20个页面的方法是什么,这些页面以具有可滚动控件的形式显示这些记录。

我想的是:

getResponse(url, 1);  //get first page, this also gives me page_count from response

for (i := 2; i < page_count; i++){
  getResponse(url, i); // loop through number of pages to get each page till the end
}

所以,上面,我传递了我想要的url和page_number。我第一次想要第一页,然后通过在每个请求中传递下一个page_number来遍历所有页面以获取其余页面。

这是常用方法吗? 如果不是这样的话,我该怎么办呢?

请注意,我在表单上没有某种分页系统,它只是一个包含所有结果的可滚动视图。

0 个答案:

没有答案