SharePoint, как вы программно определяете размер хранилища SPWeb?

Не сам сайт, а отдельный SPWeb.

sharepoint,spweb,

5

Ответов: 2


Вы должны взглянуть на эту запись в блоге Александра Мейерса: Размер SPWeb на основе его папок и файлов

Он обеспечивает умный способ найти размер SPWeb или SPFolder путем итерации через его контент.

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

0

Для тех, кто возвращается к этому вопросу, вот недостающий метод:

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;
}
SharePoint, SPWeb,
Похожие вопросы