martes, 15 de febrero de 2011

Recorrer todas las carpetas de una biblioteca de SharePoint

Hace poco he necesitado este requerimiento en un proyecto y quiero explicar cómo lo he hecho.
Primero, es básico tener habilitado la creación de carpetas para la biblioteca en cuestión, sinó difícil poder crear carpetas, ésto se hace mediante la configuración avanzada de la lista.
Una vez tenemos creadas carpetas se pueden recorrer mediante este código:



using (SPSite site = new SPSite("http://sitecreado"))
{
using (SPWeb web = site.OpenWeb("webcreado"))
{
try
{
SPList list = web.Lists["Lista"];
SPListItemCollection colectionfolders = list.Folders;
if (colectionfolders.Count > 0)
{
foreach (SPListItem item in colectionfolders)
{
//GESTIÓN DE NUESTRAS FOLDERS CON item.folder del
tipo SPFolder
}
}
else
{
string s = "No existen carpetas en esta librería";
}
}catch(Exception ex)
{
throw new Exception(ex.message);
}
}
}




El código instancia la lista deseada y guarda todos los items de tipo folder. Una vez guardados, los utilizamos mediante el .folder de cada item y los gestionamos a nuestro antojo.

En el próximo post comentaré las características de las SPFolder y los SPFiles.

1 comentario:

  1. Hola, me gustaría saber que pasa si solo tengo la url del servidor y no tengo ninguna web creada, o a que te refieres con esto:

    using (SPWeb web = site.OpenWeb("webcreado"))

    Y si quisiera visualizar un documento que se encuentre dentro de una carpeta?

    Estoy empezando con esto del sharepoint, ojala puedas ayudarme.

    ResponderEliminar