2008-10-14 9 views

Antwort

7

Sie sollten einen Blick auf diesen Blog-Eintrag von Alexander Meijers nehmen: Size of SPWeb based on its Folders and Files

Es bietet eine clevere Art, die Größe eines SPWeb oder SPFolder zu finden, indem er durch seinen Inhalt iterieren.

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

Der Artikel existiert nicht mehr, und der Code GetFoldersize fehlt. Es gibt eine Diskussion mit diesem Code hier: http://social.msdn.microsoft.com/forums/en-us/sharepointdevelopment/thread/0d066e9b-f6b9-49bc-b741-fcf7abdc854b –

+0

Ah, das ist gut zu wissen. Vielen Dank! –

0

Für alle, die zurück auf diese Frage kommt, ist hier die fehlende Methode:

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