sharepoint spweb

SharePoint, ¿cómo se determina programáticamente el tamaño de almacenamiento de un SPWeb?



(2)

Deberías echarle un vistazo a esta entrada de blog de Alexander Meijers: Tamaño de SPWeb basado en sus carpetas y archivos.

Proporciona una forma inteligente de encontrar el tamaño de un SPWeb o SPFolder al iterar a través de su contenido.

private long GetWebSize(SPWeb web) { long total = 0; foreach (SPFolder folder in web.Folders) { total += GetFolderSize(folder); } foreach (SPWeb subweb in web.Webs) { total += GetWebSize(subweb); subweb.Dispose(); } return total; }

No de la colección del sitio en sí, sino de los SPWeb individuales.


Para cualquiera que vuelva a esta pregunta, aquí está el método que falta:

private long GetFolderSize(SPFolder folder) { long folderSize = 0; foreach (SPFile file in folder.Files) { folderSize += file.Length; } foreach (SPFolder subfolder in folder.SubFolders) { folderSize += GetFolderSize(subfolder); } return folderSize; }