Compartilhar via


SPListCollection class

Representa uma coleção de objetos SPList .

Inheritance hierarchy

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

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaração
Public Class SPListCollection _
    Inherits SPBaseCollection
'Uso
Dim instance As SPListCollection
public class SPListCollection : SPBaseCollection

Comentários

Use a propriedade Lists da classe SPWeb para retornar um objeto SPListCollection que representa a coleção de listas em um site ou use a propriedade Lists da classe SPList para retornar um objeto SPListCollection que representa a coleção de listas pai para obter uma lista. Para criar uma lista, use um dos métodos de Add de SPListCollection.

Use um indexador para retornar uma única lista da coleção. Por exemplo, supondo que a coleção é atribuído a uma variável chamada collLists, use collLists[index] em C# ou deindexde collLists() no Visual Basic, onde index é o número de índice da lista na coleção, o nome de exibição da lista, ou a GUID da lista.

Se os usuários que estiverem executando o código tem permissão total para obter uma lista, mas não tem permissões para o site, use o indexador GUID para retornar uma lista da coleção de listas no site. Caso contrário, uma mensagem de erro de acesso negado é retornada porque o usuário não tem permissão para enumerar a coleção de listas, como é feito quando o indexador de nome é usado. O indexador GUID permite acesso direto ao item porque o GUID é a chave primária na tabela listas do banco de dados Microsoft SharePoint Foundation .

Examples

O exemplo de código a seguir itera em todas as listas de todos os sites em um conjunto de sites e exibe o nome de cada lista e o site. O exemplo pressupõe a existência de uma página. aspx que contém um controle label.

Este exemplo requer diretivas de using (Imports no Visual Basic) para os namespaces Microsoft.SharePoint e 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();
    }
}

Dica

Determinados objetos implementam a interface IDisposable , e você deve evitar reter esses objetos na memória depois que eles não são mais necessários. Para obter informações sobre boas práticas de codificação, consulte Disposing Objects.

Thread safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Ver também

Referência

SPListCollection members

Microsoft.SharePoint namespace