Server- und Websitearchitektur: Übersicht über das Objektmodell

SharePoint 2010

Letzte Änderung: Freitag, 22. Januar 2010

Gilt für: SharePoint Foundation 2010

Inhalt dieses Artikels
Einstiegspunkte
Serverarchitektur
Websitearchitektur

Microsoft SharePoint Foundation bietet ein hoch strukturiertes serverseitiges Objektmodell, das einen einfachen Zugriff auf Objekte ermöglicht, die die verschiedenen Aspekte einer SharePoint-Website darstellen. Sie können von Objekten auf höheren Ebenen einen Drilldown hinunter in die Objekthierarchie ausführen, um das Objekt abzurufen, das die für Ihren Code benötigten Member enthält.

Je nach dem Typ der benutzerdefinierten Anwendung oder Lösung, die Sie erstellen, verwenden Sie unterschiedliche Einstiegspunkte für das Objektmodell, um das richtige Ausgangsobjekt abzurufen. Wenn Sie beispielsweise die Administration und Konfiguration einer Bereitstellung anpassen, können Sie mithilfe der statischen ContentService-Eigenschaft das aktuelle Webdienstobjekt und seine Webanwendungsauflistung zurückgeben. Zum Ändern von Einstellungen in der administrativen Webanwendung verwenden Sie stattdessen die AdministrationService-Eigenschaft. Auflistungsklassen, die von der Microsoft.SharePoint.Administration.SPPersistedObjectCollection<T>-Klasse abgeleitet sind, erben eine GetValue-Methode, die Sie verwenden können, um ein bestimmtes Objekt aus einer Auflistung zurückzugeben.

Hinweis Hinweis

Wenn Sie ein Webpart, einen benutzerdefinierten Webdienst oder eine Webanwendung zum Arbeiten mit Websitesammlungen, einzelnen Websites oder Listen erstellen, können Sie Member der Microsoft.SharePoint.SPContext-Klasse verwenden, um die aktuelle Websitesammlung, Website oder Liste abzurufen. Wenn Sie eine Webanwendung im virtuellen Verzeichnis /_layouts erstellen, wird deren Funktionalität allen Websites auf dem Webserver zur Verfügung gestellt. Außerhalb eines HTTP-Kontexts, z. B. in einer Konsolenanwendung oder in einer Windows-Anwendung, verwenden Sie einen Konstruktor der SPSite-Klasse, um eine bestimmte Websitesammlung abzurufen und verschiedene Objekte innerhalb der Auflistung zu erreichen. Weitere Informationen finden Sie unter Abrufen von Verweisen auf Websites, Webanwendungen und andere Schlüsselobjekte.

Das folgende Diagramm zeigt die SharePoint Foundation-Serverarchitektur in Bezug zu den Auflistungen und Objekten des Microsoft.SharePoint.Administration-Namespace.

Serverarchitektur und Administration-Namespace
  1. Das SPFarm-Objekt ist das am weitesten oben befindliche Objekt in der SharePoint Foundation-Objektmodellhierarchie. Die Servers-Eigenschaft ruft eine Auflistung ab, die alle Server in der Bereitstellung darstellt. Die Services-Eigenschaft ruft eine Auflistung ab, die alle Dienste darstellt.

  2. Jedes SPServer-Objekt stellt einen physischen Servercomputer dar. Die ServiceInstances-Eigenschaft bietet Zugriff auf die einzelnen Dienstinstanzen, die auf dem einzelnen Computer ausgeführt werden.

  3. Jedes SPService-Objekt stellt einen logischen Dienst dar, der in der Serverfarm installiert ist. Abgeleitete Typen der SPService-Klasse umfassen z. B. Objekte für Windows-Dienste, etwa den Timerdienst, die Suche, den Datenbankdienst usw., sowie Objekte für Webdienste, beispielsweise den grundlegenden Webdienst für die Inhaltsveröffentlichung, der die Webanwendungen unterstützt.

  4. Ein SPWebService-Objekt bietet Zugriff auf Konfigurationseinstellungen für einen bestimmten logischen Dienst oder eine logische Anwendung. Die WebApplications-Eigenschaft ruft die Auflistung der Webanwendungen ab, in denen der Dienst ausgeführt wird.

  5. Wenn der Dienst das Service Application Framework von SharePoint Foundation implementiert, kann er in mehrere konfigurierte Instanziierungen für den Farmbereich (Configured Farm-Scoped Instantiations, CFSIs) aufgesplittet werden. Jede CFSI stellt die Funktionalität des Diensts bereit, hat jedoch eigene Einstellungen für Berechtigungen und die Bereitstellung.

  6. Jede Instanz eines Diensts, oder CFSI, die auf einem bestimmten Server ausgeführt wird, wird durch ein SPServiceInstance-Objekt dargestellt.

  7. Ein SPDatabaseServiceInstance-Objekt stellt eine einzelne Instanz eines Datenbankdiensts dar, der auf dem Datenbankservercomputer ausgeführt wird. Die SPDatabaseServiceInstance-Klasse wird von der SPServiceInstance-Klasse abgeleitet und erbt somit die Service-Eigenschaft, die Zugriff auf den Dienst oder die Anwendung bereitstellt, den bzw. die die Instanz implementiert. Die Databases-Eigenschaft ruft die Auflistung der in dem Dienst verwendeten Inhaltsdatenbanken ab.

  8. Jedes SPWebApplication-Objekt stellt eine Webanwendung dar, die auf einer IIS-Website (Internet Information Services, Internetinformationsdienste) gehostet wird. Das SPWebApplication-Objekt bietet Zugriff auf Anmeldeinformationen und andere farmweite Anwendungseinstellungen. Die Sites-Eigenschaft ruft die Auflistung von Websitesammlungen innerhalb der Webanwendung ab. Die ContentDatabases-Eigenschaft ruft die Auflistung der in der Webanwendung verwendeten Inhaltsdatenbanken ab.

  9. Ein SPContentDatabase-Objekt erbt von der SPDatabase-Klasse und stellt eine Datenbank dar, die Benutzerdaten für eine Webanwendung enthält. Die Sites-Eigenschaft ruft die Auflistung der Websitesammlungen ab, für die die Inhaltsdatenbank Daten speichert. Die WebApplication-Eigenschaft ruft die übergeordnete Webanwendung ab.

  10. Ein SPSiteCollection-Objekt stellt die Auflistung der Websitesammlungen innerhalb der Webanwendung dar.

Im folgenden Diagramm wird die SharePoint Foundation-Websitearchitektur in Bezug zu den Auflistungen und Objekten des Microsoft.SharePoint-Namespace gezeigt.

Websitearchitektur
  1. Jedes SPSite-Objekt stellt ungeachtet seines Namens im Singular eine Gruppe von logisch zusammenhängenden SPWeb-Objekten dar (siehe unten). Eine solche Gruppe heißt allgemein "Websitesammlung", doch SPSite ist im Gegensatz zu SPWebCollection keine standardmäßige Microsoft .NET-Auflistungsklasse. Sie enthält vielmehr Member, die zur Verwaltung der Websitesammlung verwendet werden können. Die AllWebs-Eigenschaft bietet Zugriff auf das SPWebCollection-Objekt, das die Auflistung aller Websites innerhalb der Websitesammlung einschließlich der Website auf oberster Ebene darstellt. Die SPSite.OpenWeb-Methode der SPSite-Klasse gibt eine bestimmte Website zurück.

  2. Jede Websitesammlung enthält eine beliebige Anzahl von SPWeb-Objekten, und jedes Objekt enthält Member, mit denen eine Website einschließlich der zugehörigen Vorlage und des Designs verwaltet und auf Dateien und Ordner in der Website zugegriffen werden kann. Die Webs-Eigenschaft gibt ein SPWebCollection-Objekt zurück, das alle Unterwebsites einer angegebenen Website darstellt. Die Lists-Eigenschaft gibt ein SPListCollection-Objekt zurück, das alle Listen in der Website darstellt.

  3. Jedes SPList-Objekt enthält Member, die zum Verwalten der Liste oder für den Zugriff auf Elemente in der Liste verwendet werden. Mithilfe der GetItems-Methode können Abfragen ausgeführt werden, die bestimmte Elemente zurückgeben. Die Fields-Eigenschaft gibt ein SPFieldCollection-Objekt zurück, das alle Felder oder Spalten in der Liste darstellt. Die Items-Eigenschaft gibt ein SPListItemCollection-Objekt zurück, das alle Elemente oder Zeilen in der Liste darstellt.

  4. Jedes SPField-Objekt hat Member, die Einstellungen für das Feld enthalten.

  5. Jedes SPListItem-Objekt stellt eine einzelne Zeile in der Liste dar.

Anzeigen: