Диспетчер каталогов Commerce Server SearchOptions setPaging

Я использую этот метод:

http://msdn.microsoft.com/en-US/library/microsoft.commerceserver.catalog.commonsearchoptions.setpaging.aspx

как таковой:

        CatalogSearch p = catalogContext.GetCatalogSearch();
        p.CatalogNames = "**";
        p.SearchOptions = new CatalogSearchOptions();
        p.SearchOptions.SetPaging(1, 400);
        p.SearchOptions.ClassTypes = CatalogClassTypes.ProductClass;

Обычно я делал p.Search() и получал CatalogItemsDataSet. Это хорошо. Чего я не могу понять, так это как мне перейти на следующую страницу результатов? Мой запрос вернет около 7500 результатов, максимум 500 на поисковый вызов, что недостаточно. Должен ли я делать это вручную?


person Stephen K    schedule 19.09.2013    source источник


Ответы (1)


Вы должны зациклить или повторить свой вызов Search, каждый раз увеличивая pageNumber на размер вашей страницы. Размер вашей страницы равен 400, поэтому код подкачки в цикле может выглядеть так: p.SearchOptions.SetPaging(lastPageNumber + 400); Вы останавливаетесь, когда Search метод out totalRecords меньше размера страницы.

person bentayloruk    schedule 19.09.2013