Compartilhar via


Como a: Adicionar ou excluir uma lista em vários sites da Web

Você pode usar um dos métodos Add adicionar a classe SPListCollection T:Microsoft.SharePoint.SPListCollection para adicionar uma lista para múltiplo sites da Web em uma coleção site.

O seguinte exemplo cria um genérico lista em cada site, com base no título e descrição que foi passada da duas caixas de texto para a codificar. O AllWebs P:Microsoft.SharePoint.SPSite.AllWebs propriedade do SPSite T:Microsoft.SharePoint.SPSite classe é usada para retornar a coleção de todos os Web Sites que existem no site.

Este exemplo pressupõe a existência de duas caixas de texto sobre a página .aspx que contém uma forma.

                  Dim listTitle As String = TextBox1.Text.ToString()
Dim listDescription As String = TextBox2.Text.ToString()

Dim mySite As SPSite = SPContext.Current.Site
Dim allWebs As SPWebCollection = mySite.AllWebs
Dim web As SPWeb

For Each web In  allWebs
    Dim allLists As SPListCollection = web.Lists
    allLists.Add(listTitle, listDescription, SPListTemplateType.GenericList)
Next web
                  string listTitle = TextBox1.Text.ToString();
string listDescription = TextBox2.Text.ToString();

SPSite mySite = SPContext.Current.Site;
SPWebCollection allWebs = mySite.AllWebs;

foreach (SPWeb web in allWebs)
{
    SPListCollection allLists = web.Lists;
    allLists.Add(listTitle,listDescription, SPListTemplateType.GenericList);
}

O exemplo anterior requer um using ( Imports na Visual Basic) para o espaço para nome Microsoft.SharePoint N:Microsoft.SharePoint.

Se você desejar excluir uma lista de cada site na qual ele aparece, use o Delete M:Microsoft.SharePoint.SPListCollection.Delete(System.Guid) método do SPListCollection T:Microsoft.SharePoint.SPListCollection classe. O seguinte exemplo usa os loops aninhados para analisar Down to uma lista que tenha um compatível título o título especificado em um caixa de texto. O exemplo pressupõe a existência de uma caixa de texto na página .aspx que contém uma forma.

                  Dim mySite As SPSite = SPContext.Current.Site
Dim allWebs As SPWebCollection = mySite.AllWebs
Dim web As SPWeb

For Each web In  allWebs
    Dim allLists As SPListCollection = web.Lists
    Dim i As Integer

    For i = 0 To allLists.Count - 1
        Dim list As SPList = allLists(i)

        If list.Title = TextBox1.Text Then
            Dim listGuid As Guid = list.ID
            allLists.Delete(listGuid)
        End If
    Next i
Next web
                  SPSite mySite = SPContext.Current.Site;
SPWebCollection allWebs = mySite.AllWebs;

foreach (SPWeb web in allWebs)
{
    SPListCollection allLists = web.Lists;

    for (int i=0; i<allLists.Count; i++)
    {
        SPList list = allLists[i];

        if (list.Title == TextBox1.Text)
        {
            Guid listGuid = list.ID;
            allLists.Delete(listGuid);
        }
    }
}

No exemplo a Title P:Microsoft.SharePoint.SPList.Title propriedade do SPList classe é usada para identificar uma lista na coleção de listas para cada site que corresponde o título especificado. O ID propriedade retorna a identificador exclusivo (GUID) da lista, que é passada como o parâmetro para o Delete.

O exemplo anterior requer um using ( Imports na Visual Basic) para o espaço para nome Microsoft.SharePoint N:Microsoft.SharePoint.

Consulte também

Referência

Microsoft.SharePoint

Conceitos

Trabalhando com lista de objetos e coleções
Guia de Introdução Com programaticamente personalizar uma Web Site SharePoint em Visual Studio
A validação de segurança e fazer postagens para atualizar os dados
Elevação de privilégio