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


Класс SPListCollection

Представляет коллекцию объектов SPList .

Иерархия наследования

System.Object
  Microsoft.SharePoint.Administration.SPAutoSerializingObject
    Microsoft.SharePoint.SPBaseCollection
      Microsoft.SharePoint.SPListCollection

Пространство имен:  Microsoft.SharePoint
Сборка:  Microsoft.SharePoint (в Microsoft.SharePoint.dll)

Синтаксис

'Декларация
Public Class SPListCollection _
    Inherits SPBaseCollection
'Применение
Dim instance As SPListCollection
public class SPListCollection : SPBaseCollection

Замечания

Используйте свойство Lists класса SPWeb возвращает объект SPListCollection , представляющий коллекцию списков на узле, или свойство Lists класса SPList возвращает объект SPListCollection , представляющий коллекцию списков родительский список. Чтобы создать список, используйте один из методов AddSPListCollection.

Используйте индексатор для получения один список из коллекции. Например предположим, что коллекция присваивается переменной с именем collLists, используйтеindexcollLists[] в C# илиindexcollLists() в того, где index — индекс списка в коллекции списка отображаемое имя или идентификатор GUID списка.

Если разрешение Полный список пользователей, выполняющих код, но нет разрешений для веб-узла, используйте индексатор GUID для возврата списка из коллекции списков на узле. В противном случае — сообщение об ошибке Отказано в доступе возвращается, так как пользователь не допускается для перечисления коллекции списков, как при использовании имя индексатора. Индексатор GUID позволяет прямой доступ к элементу, поскольку идентификатор GUID является первичным ключом в таблице перечислены базы данных Microsoft SharePoint Foundation .

Примеры

В следующем примере кода выполняется итерация по все списки всех узлов в семействе узлов и отображает имя каждого сайта и списка. В примере предполагается существование страница ASPX, которая содержит элемент управления label.

В этом примере требуется директивы using (Imports в Visual Basic) для пространства имен Microsoft.SharePoint и Microsoft.SharePoint.Utilities .

Dim site As SPSite = SPControl.GetContextSite(Context)
Dim allSites As SPWebCollection = site.AllWebs
Dim subSite As SPWeb

For Each subSite In  allSites

    Dim allSiteLists As SPListCollection = subSite.Lists
    Dim subSiteList As SPList

    For Each subSiteList In  allSiteLists

        Label1.Text += SPEncode.HtmlEncode(subSite.Name) & " :: " & _
           SPEncode.HtmlEncode(subSiteList.Title) & "<BR>"

    Next subSiteList

Next subSite 
SPSite oSiteCollection = SPContext.Current.Site;
using(SPWebCollection collWebs = oSiteCollection.AllWebs)
{
    foreach (SPWeb oWebsite in collWebs)
    {
        SPListCollection collSiteLists = oWebsite.Lists;
        foreach (SPList oList in collSiteLists)
        {
            Label1.Text += SPEncode.HtmlEncode(oWebsite.Name) + " :: " +
                SPEncode.HtmlEncode(oList.Title) + "<BR>";
        }
        oWebsite.Dispose();
    }
}

Примечание

Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.

Потокобезопасность

Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

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

Элементы SPListCollection

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