Код: Выделить всё
var chats = await graphClient.Chats
.GetAsync(requestConfiguration =>
{
requestConfiguration.QueryParameters.Filter = "chatType eq 'group' and topic ne null and viewpoint/isHidden eq false";
});
Код: Выделить всё
while (true)
{
foreach (var chat in chats.Value)
{
chatsAll.Add(chat);
}
if (!string.IsNullOrEmpty(chats.OdataNextLink))
{
chats = await graphClient.Chats
.WithUrl(chats.OdataNextLink).GetAsync();
}
else
{
break;
}
}
Если Я добавляю в цикл еще одно условие прерывания, например if(chats.Value == null ||chats.Value.Count == 0)break; Я могу пропустить некоторые результаты, которые были на последующих страницах.Почему есть ли пустые страницы между записями? Есть ли решение, позволяющее минимизировать вызовы графа при агрегировании всех результатов в соответствии с предоставленным фильтром?
Надеюсь, я хорошо объяснил.
Подробнее здесь: https://stackoverflow.com/questions/793 ... ated-query