This Blog

Syndication

Search

Tags

Community

Email Notifications

Archives

Enlaces Recomendados

SharePoint 2010: ¡Cómo leer el contenido de carpetas de una lista/biblioteca con el modelo de objetos en cliente!

Si queremos leer los documentos almacenados en una biblioteca de documentos mediante el modelo de objetos en cliente, de nuevo tendremos las clases adecuadas para ello:

  • Por un lado, a partir de una lista podremos obtener fácilmente la colección de carpetas de la misma mediante FolderCollection.
  • Por otro, una vez obtenida la colección de carpetas podemos obtener la colección de archivos por carpeta mediante FildeCollection. La pega es qué tendremos que hacer una nueva petición al servidor para ir obteniendo la colección de archivos de cada carpeta.
   1: using (MO_NET.ClientContext context = new MO_NET.ClientContext("http://<MiSitioSP>"))
   2: {
   3:     context.AuthenticationMode =
   4:         MO_NET.ClientAuthenticationMode.Default;
   5:     context.Credentials =
   6:         new NetworkCredential("Usuario", "Contraseña", "Dominio");
   7:  
   8:     //Definición de operaciones
   9:     MO_NET.List oList = context.Web.Lists.GetByTitle("Infraestructura");
  10:     MO_NET.FolderCollection flcColection = oList.RootFolder.Folders;
  11:     
  12:     //Carga de operaciones
  13:     context.Load(flcColection);
  14:  
  15:     //Ejecutar operaciones
  16:     context.ExecuteQuery();
  17:  
  18:     foreach (MO_NET.Folder folder in flcColection)
  19:     {
  20:         Console.WriteLine(folder.Name);
  21:         MO_NET.FileCollection fCollection=folder.Files;
  22:         context.Load(fCollection);
  23:         context.ExecuteQuery();
  24:         foreach (MO_NET.File file in fCollection)
  25:         {
  26:             Console.WriteLine(" -> Archivo: {0}", file.Name);
  27:         }                    
  28:     }
  29: }

El resultado que se obtiene por pantalla es el siguiente:

image

Published 15/7/2012 13:36 por Juan Carlos González Martín

Comparte este post: