SPFolder-Klasse
Steht für einen Ordner auf einer SharePoint-Website.
Vererbungshierarchie
System.Object
Microsoft.SharePoint.SPFolder
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaration
Public Class SPFolder
'Usage
Dim instance As SPFolder
public class SPFolder
Hinweise
Verwenden Sie die Folders -Eigenschaft der SPWeb -Klasse oder die SubFolders -Eigenschaft der SPFolder -Klasse, um ein SPFolderCollection -Objekt zurückzugeben, das die Auflistung von Ordnern für eine Website oder einen Ordner darstellt. Verwenden Sie einen Indexer ein einzelnes Ordners aus der Auflistung zurückgegeben. Verwenden Sie z. B., wenn die Auflistung in eine Variable namens collFolderszugewiesen wird, collFolders[index] in C# oder collFolders(index) in Visual Basic, wo index entweder die Indexnummer des Ordners in der Auflistung oder der Anzeigename des Ordners ist.
Beispiele
Das folgende Codebeispiel zeigt Informationen zu den Ordnern in einer Website und alle Unterwebsites, einschließlich den Sitenamen, den Namen des Ordners, der die Anzahl der Dateien in den Ordner und die Gesamtgröße der Dateien.
Dieses Beispiel erfordert using Richtlinien (Imports in Visual Basic) für die Namespaces Microsoft.SharePoint und Microsoft.SharePoint.Utilities .
Das Beispiel erfordert ebenfalls eine vordefinierte ASPX-Seite, die ein Label-Steuerelement enthält.
Dim siteCollection As SPSite = SPControl.GetContextSite(Context)
Dim sites As SPWebCollection = siteCollection.AllWebs
Dim site As SPWeb
For Each site In sites
Dim folders As SPFolderCollection = site.Folders
Dim folder As SPFolder
For Each folder In folders
Dim files As SPFileCollection = folder.Files
Dim totalFileSize As Long = 0
Dim i As Integer
For i = 0 To files.Count - 1
totalFileSize += files(i).Length
Next i
Label1.Text += " Web: " & SPEncode.HtmlEncode(site.Name)
& " Folder: " _
& SPEncode.HtmlEncode(folder.Name) & " Number: "
& folder.Files.Count _
& " Size: " & totalFileSize & "<BR>"
Next folder
Next site
SPSite oSiteCollection = SPContext.Current.Site;
SPWebCollection collWebsites = oSiteCollection.AllWebs;
foreach (SPWeb oWebsite in collWebsites)
{
SPFolderCollection collFolders = oWebsite.Folders;
foreach (SPFolder oFolder in collFolders)
{
SPFileCollection collFiles = oFolder.Files;
long lngTotalFileSize = 0;
for (int intIndex = 0; intIndex < collFiles.Count; intIndex++)
{
lngTotalFileSize += collFiles[intIndex].Length;
}
Label1.Text += " Web: " +
SPEncode.HtmlEncode(oWebsite.Name)
+ " Folder: " +
SPEncode.HtmlEncode(oFolder.Name) + " Number: "
+ oFolder.Files.Count +
" Size: " + lngTotalFileSize + "<BR>";
}
oWebsite.Dispose();
}
Hinweis
Bestimmte Objekte, die IDisposable -Schnittstelle implementieren, und müssen Sie vermeiden, diese Objekte im Arbeitsspeicher beibehalten, nachdem sie nicht mehr benötigt werden. Informationen zu bewährten Programmierpraktiken finden Sie unter Disposing Objects.
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Die Threadsicherheit von Instanzmembern ist nicht gewährleistet.