Share via


SPDocumentLibrary class

Representa uma biblioteca de documentos em Microsoft SharePoint Foundation.

Inheritance hierarchy

System.Object
  Microsoft.SharePoint.SPSecurableObject
    Microsoft.SharePoint.SPList
      Microsoft.SharePoint.SPDocumentLibrary
        Microsoft.SharePoint.SPPictureLibrary

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

Syntax

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

Comentários

Para obter um objeto SPDocumentLibrary , converta determinada lista como uma biblioteca de documentos, conforme mostrado no exemplo a seguir.

Dim documentLibrary As SPDocumentLibrary = CType(list, SPDocumentLibrary)
SPDocumentLibrary oDocumentLibrary = (SPDocumentLibrary)oList;

Examples

O exemplo de código a seguir itera em todos os sites e suas listas e, excluindo catálogos ou bibliotecas de formulários, exibe o nome do site e de lista, bem como o nome do arquivo, para cada item em cada biblioteca de documentos.

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 siteCollection As SPSite = SPControl.GetContextSite(Context)
Dim sites As SPWebCollection = siteCollection.AllWebs
Dim site As SPWeb

For Each site In sites
    Dim lists As SPListCollection = site.Lists
    Dim list As SPList

    For Each list In lists

        If list.BaseType = SPBaseType.DocumentLibrary Then
            Dim docLibrary As SPDocumentLibrary = 
                CType(list, SPDocumentLibrary)

            If Not docLibrary.IsCatalog Then

                If list.BaseTemplate <> SPListTemplateType.XMLForm Then
                    Dim docLibItems As SPListItemCollection = 
                        docLibrary.Items
                    Dim docLibItem As SPListItem

                    For Each docLibItem In docLibItems
                        Label1.Text += SPEncode.HtmlEncode(site.Name) 
                                & " :: " _
                            & SPEncode.HtmlEncode(list.Title) 
                                & " :: " _
                            & SPEncode.HtmlEncode(docLibItem("Title")) 
                                & "<BR>"
                    Next docLibItem
                End If
            End If
        End If
    Next list
Next site
SPSite oSiteCollection = SPContext.Current.Site;
SPWebCollection collWebsites = oSiteCollection.AllWebs;

foreach (SPWeb oWebsite in collWebsites)
{
    SPListCollection collLists = oWebsite.Lists;

    foreach (SPList oList in collLists)
    {
        if (oList.BaseType == SPBaseType.DocumentLibrary)
        {
            SPDocumentLibrary oDocumentLibrary = (SPDocumentLibrary)oList;

            if (!oDocumentLibrary.IsCatalog && oList.BaseTemplate != 
                SPListTemplateType.XMLForm)
            {
                SPListItemCollection collListItems = oDocumentLibrary.Items;

                foreach (SPListItem oListItem in collListItems)
                {
                    Label1.Text += SPEncode.HtmlEncode(oWebsite.Name) + 
                        " -- " + 
                        SPEncode.HtmlEncode(oList.Title) + " -- " + 
                        SPEncode.HtmlEncode(oListItem["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

SPDocumentLibrary members

Microsoft.SharePoint namespace