У меня есть список с более чем 5000 наименований на сайте Sharepoint Online. Перед тем как список достиг 5000 пунктов, я использовал следующий фрагмент кода, чтобы получить все элементы: C# SharePoint объединить несколько ListItemCollection в один
var camlquery = new CamlQuery();
camlquery.ViewXml = @"<View Scope='RecursiveAll'>
<ViewFields>
<FieldRef Name='OppId' />
</ViewFields>
<Query>
<QueryOptions>
<ViewAttributes Scope='Recursive' />
</QueryOptions>
</Query>
</View>";
ListItemCollection listItems = _currentList.GetItems(camlquery);
_clientContext.Load(listItems, items => items.Include(item => item["OppId"], item => item.Id));
_clientContext.ExecuteQuery();
Теперь я получил в этой неприятной ситуации, когда у меня есть более чем 5000 наименований. Обычно это не проблема. Я сумел это сделать в PowerShell, просмотрев результаты.
В этом случае я использую Microsoft.SharePoint.Client.ListItemCollection и добавляю элементы в коллекцию с функцией GetItems(camlquery)
. Когда я пытаюсь добавить дополнительные элементы с другой страницы, это, похоже, не сработает.
Я попытался пропустить элементы и добавить их в ListItemCollection. Но нет функции добавления или вставки.
foreach (ListItem myListItem in listItems2)
{
listItems.Add(myListItem);
}
Мне нужно вернуть один экземпляр ListItemCollection с более чем 5000 элементами.
Спасибо за помощь