SharePoint, how do you programatically determine the storage size of a SPWeb?

Not of the site collection itself, but the individual SPWeb's.

-------------Problems Reply------------

You should take a look at this blog entry by Alexander Meijers : Size of SPWeb based on its Folders and Files

It provides a clever way of finding the size of an SPWeb or SPFolder by iterating through his content.

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;
}

For anyone who comes back to this question, here is the missing method:

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;
}

Category:sharepoint Views:3 Time:2008-10-14

Related post

Copyright (C) dskims.com, All Rights Reserved.

processed in 0.086 (s). 11 q(s)