Класс SPListItemCollectionPosition
Поддерживает постраничный просмотр наборов данных, для сохранения состояния, который необходим для получения следующей страницы данных конкретного представления списка.
Иерархия наследования
System.Object
Microsoft.SharePoint.SPListItemCollectionPosition
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public Class SPListItemCollectionPosition
'Применение
Dim instance As SPListItemCollectionPosition
public class SPListItemCollectionPosition
Примеры
В следующем примере кода используются свойства ListItemCollectionPosition класса SPListItemCollection и SPQuery для возврата объекта SPListItemCollectionPosition , который хранит сведения о каждой страницы данных заканчивается на коллекции элементов, куда в группы по 10 строк, которая отображает названия элементов. В этом примере предполагается, что список является библиотекой документов или включения в списке папок.
В этом примере требуется директивы using (Imports в Microsoft Visual Basic) для пространства имен Microsoft.SharePoint и Microsoft.SharePoint.Utilities .
Dim site As SPWeb = SPControl.GetContextWeb(Context)
Dim list As SPList = site.Lists("Announcements")
Dim query As New SPQuery()
query.RowLimit = 10
query.Query = "<OrderBy Override=\"TRUE\">" & _
"<FieldRef Name=\"FileLeafRef\" /></OrderBy>";
Dim i As Integer = 1
Do
Response.Write("<BR>Page: " & i & "<BR>")
Dim listItems As SPListItemCollection = list.GetItems(query)
Dim listItem As SPListItem
For Each listItem In listItems
Response.Write
(SPEncode.HtmlEncode(listItem("Title").ToString()) & _
"<BR>")
Next listItem
query.ListItemCollectionPosition = _
listItems.ListItemCollectionPosition
i += 1
Loop While Not (query.ListItemCollectionPosition Is Nothing)
SPWeb oWebsite = SPContext.Current.Web;
SPList oList = oWebsite.Lists["Announcements"];
SPQuery oQuery = new SPQuery();
oQuery.RowLimit = 10;
oQuery.Query = "<OrderBy Override=\"TRUE\">" +
"<FieldRef Name=\"FileLeafRef\" /></OrderBy>";
int intIndex = 1;
do
{
Response.Write("<BR>Page: " + intIndex + "<BR>");
SPListItemCollection collListItems = oList.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
Response.Write(SPEncode.HtmlEncode(oListItem["Title"].ToString()) +
"<BR>");
}
oQuery.ListItemCollectionPosition =
collListItems.ListItemCollectionPosition;
intIndex++;
} while (oQuery.ListItemCollectionPosition != null);
Примечание
Сведения об использовании запросов, встроенных в язык запросов (LINQ) для извлечения элементов списка в SharePoint FoundationManaging Data with LINQ to SharePointсм.
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.