Пейджинг здесь не работает, ошибка говорит: выражение запроса не поддерживается. Ошибка возникает в этой строке:
clientContext.Load (listItems, itms => itms.Skip ((PageNumber - 1) * PageSize) .Take (PageSize));Paging Issue SP 2010 с C#
Не могли бы вы посоветовать пожалуйста?
Благодаря
/// <summary>
/// Method to return list of documents of a specific document library
/// </summary>
/// <param name="docLibaryName"></param>
/// <returns></returns>
public List<Document> GetDocumentsByLibraryName(string spURL, string docLibaryName, int PageSize, int PageNumber)
{
List<Document> docList = new List<Document>();
//Access the Document Library
ClientContext clientContext = new ClientContext(spURL);
List sharedDocumentsList = clientContext.Web.Lists.GetByTitle(docLibaryName);
//Specify the Caml Query
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml =
@"<View Scope='Recursive'></View>";
ListItemCollection listItems = sharedDocumentsList.GetItems(camlQuery);
clientContext.Load(listItems, itms => itms.Skip((PageNumber - 1) * PageSize).Take(PageSize));
clientContext.ExecuteQuery();
AddItemsToDocumentCollection(docList, listItems);
return docList.ToList();
}
Как можно сделать пейджинг, используя этот подход? Нужно ли мне смотреть на некоторые другие подходы? –
@HariGillala См. Редактирование. – Servy
Если это значение равно null, то следующей страницы нет. Спасибо, это хороший совет, поскольку возвращение назад после окончания страницы не представляется возможным. По крайней мере, похоже. –