Поделиться через


Класс 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) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

Справочные материалы

Элементы SPListItemCollectionPosition

Пространство имен Microsoft.SharePoint