Clase SPDocumentLibrary
Representa una biblioteca de documentos en Microsoft SharePoint Foundation.
Jerarquía de la herencia
System.Object
Microsoft.SharePoint.SPSecurableObject
Microsoft.SharePoint.SPList
Microsoft.SharePoint.SPDocumentLibrary
Microsoft.SharePoint.SPPictureLibrary
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Class SPDocumentLibrary _
Inherits SPList
'Uso
Dim instance As SPDocumentLibrary
public class SPDocumentLibrary : SPList
Comentarios
Para obtener un objeto SPDocumentLibrary , convertir la lista especificada como una biblioteca de documentos, tal como se muestra en el ejemplo siguiente.
Dim documentLibrary As SPDocumentLibrary = CType(list, SPDocumentLibrary)
SPDocumentLibrary oDocumentLibrary = (SPDocumentLibrary)oList;
Ejemplos
En el ejemplo de código siguiente se recorre en iteración todos los sitios y sus listas y, con exclusión de catálogos o bibliotecas de formularios, se muestra el nombre del sitio y lista, así como el nombre de archivo para cada elemento en cada biblioteca de documentos.
En el ejemplo se presupone la existencia de una página .aspx que contiene un control de etiqueta.
En este ejemplo se requieren using directivas (Imports en Visual Basic) para los espacios de nombres Microsoft.SharePoint y 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();
}
Nota
Determinados objetos implementan la interfaz de IDisposable y, a continuación, se debe evitar la conservación de estos objetos en la memoria que ya no se necesitan. Para obtener información acerca de buenas prácticas de codificación, vea Disposing Objects.
Seguridad para subprocesos
Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.