Задать вопрос
@M-Misha-M
горе-junior, программирую на C#, изучаю .Net

Что делать если в ответе JSON есть пагинация??

Здравствуйте! Использую retail crm api https://github.com/retailcrm/api-client-dotnet библиоотеку для .Net, Там есть метод
Retailcrm.Versions.V4.Client api = new Retailcrm.Versions.V4.Client(product.SiteName, product.AccessToken);
                Dictionary<string, object> filteredOrders = new Dictionary<string, object>
               {
                { "extendedStatus", "complete" },
                { "statusUpdatedAtFrom", DateTime.Now.AddDays(-3).ToString("yyyy-MM-dd HH:mm:ss")},
                { "statusUpdatedAtTo", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}
               };

                Response responseFiltered = api.OrdersList(filteredOrders, 1, 100);


api.OrdersList
имеет 3 параметра, это фильтр, второй параметр - это текущая страница с полученными пользователями и 3 параметр , отображаемое количество пользователей на 1 страницу. Сейчас у меня хардкод - так как вторым параметром стоит 1, то я получаю пользователей только с 1 страницы. Как сделать так чтобы получать со всех страниц пользователей? Я десериализирую пользователей в модель и там есть следующее:
public class Pagination
    {
        public int limit { get; set; }
        public int totalCount { get; set; }
        public int currentPage { get; set; }
        public int totalPageCount { get; set; }
    }

Когда я десериализовал json , пользователи пишуться в мою БД. Как мне реализовать пагинацию в данном случае? Спасибо!
  • Вопрос задан
  • 635 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Разработчик игр на Unity
    13 месяцев
    Далее
  • Академия Эдюсон
    Разработчик игр на Unity + ИИ
    6 месяцев
    Далее
  • Stepik
    PRO C#. Профессия "Backend разработчик"
    4 месяца
    Далее
Решения вопроса 1
@dmitryKovalskiy
программист средней руки
И в чем проблема? ну вызывайте метод API циклом или асинхронными тасками пока все страницы не получите. Уберите хардкод. Или вы хотите что бы вам прям код написали? Тогда это жалоба за задание
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
do {
    responseFiltered = api.OrdersList(filteredOrders, page++, 100);
} while (responseFiltered.Count > 0);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы