Are there any examples or documentation on how to use the SearchService web service to handle larger search results by using the paging side of Content Server search results?
We currently use the SearchService to carry out various category/attribute metadata searches via .Net/C#/WCF etc i.e objects like
SearchServiceClient search = new SearchServiceClient();
SingleSearchRequest request = new SingleSearchRequest();
But we are finding when the search result set gets up to 100-200 results, the response time is often far too slow. When this is the case we want to look into paging search results, like the Content Server web interface does to maintain good initial search response performance.
We realise it's possible to say how many results to return in the SingleSearchRequest object, and which result to start on by changing the properties of the request i.e
request.FirstResultToRetrieve = 1;
But how to handle using search result paging? i.e when you want to say bring back the first 10 result, then build your own paging grid, then make the request for the second set of 10 results from the original search request. Clearly the web interface of Content Server already uses such functionality, but is it possible to replicate this via web services?
If so, are you then limited to returning search results in whatever order they are found in the index? Or can you still request some sort of ordering (or does that then reduce performance as it needs to find all results first to be able to return pages of results in the right order still)?
Any pointers or advice?
Many thanks in advance.