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.