Share via


Felder und Feldverweise

Letzte Änderung: Mittwoch, 21. Juli 2010

Gilt für: SharePoint Foundation 2010

Inhalt dieses Artikels
Spalten sind Felder oder Feldverweise
Hinzufügen von Spalten zu Listen
Verweisen auf Spalten in Inhaltstypen

In diesem Thema werden die Unterschiede zwischen Feldern und Feldverweisen behandelt.

Spalten sind Felder oder Feldverweise

Spalten werden in den verschiedenen SharePoint Foundation-Schemas als Field- oder FieldRef-Element (ContentType)-Elemente repräsentiert, wie z. B. Website-, Listen- und Inhaltstypdefinitionen.

Website- und Listenspalten werden in Website- und Listendefinitionen als Field-Elemente dargestellt. Website- und Listenspaltenverweise werden jedoch in Inhaltstypdefinitionen als FieldRef-Elemente dargestellt. Entsprechend werden in Websites und Listen enthaltene Website- und Listenspalten im Objektmodell als SPField-Objekte dargestellt, während die Website- und Listenspaltenverweise in Inhaltstypen als SPFieldLink-Objekte dargestellt werden.

Das Field-Element enthält die vollständige Definition einer Website- oder Listenspalte.

Das FieldRef-Element ist ein Verweis auf eine anderswo auf der Website- oder Listenebene definierte Spalte. Im Feldverweis können Sie eine Teilmenge der Spalteneigenschaften außer Kraft setzen, z. B. die folgenden Eigenschaften:

  • Anzeigename

  • XML-Heraufstufungs- und XML-Herabstufungsattribute

  • Ob das Feld optional, erforderlich oder ausgeblendet ist

Wenn Sie diese Eigenschaften im Feldverweis ändern, werden sie nur für den entsprechenden Inhaltstyp geändert, der den Feldverweis enthält.

Hinzufügen von Spalten zu Listen

Sie können sich Websitespalten als Vorlagen vorstellen. Sie erstellen die Websitespalte auf der Websiteebene und können sie dann auf die gewünschten Listen und untergeordneten Websites anwenden.

Weitere Informationen zu Websitespalten finden Sie unter Einführung in Spalten.

Wenn Sie einer Liste eine Websitespalte hinzufügen, wird die Spaltendefinition als Listenspalte lokal in die Liste kopiert. Im Listenschema wird die Listenspalte nun also durch ein Field-Element im Listenschema dargestellt. Im Objektmodell wird sie durch ein SPField-Objekt dargestellt.

Wenn Sie einer Liste eine Websitespalte hinzufügen, weist außerdem die resultierende Listenspalte die gleiche Feld-ID wie die Websitespalte auf. SharePoint Foundation verwendet diese ID zum Nachverfolgen, welche Listenspalten untergeordnete Elemente einer bestimmten Websitespalte sind. Auf diese Weise können Sie Änderungen an einer Websitespalte vornehmen und diese Änderungen an alle Listenspalten verteilen, die untergeordnete Elemente der Websitespalte sind.

Weitere Informationen finden Sie unter Aktualisieren von Websitespalten.

Sie können auch Spalten auf der Listenebene erstellen. Diese Spalten gelten nur für die Liste, in der sie erstellt werden. Sie können Listenspalten nur den Inhaltstypen in dieser Liste hinzufügen. Listenspalten werden auch als Field-Elemente im Listenschema repräsentiert, und als SPField-Objekte im Objektmodell. Da sie nicht von einer anderen Spalte abgeleitet werden, weisen sie keine über-/untergeordneten Beziehungen zu einer anderen Spalte auf.

Verweisen auf Spalten in Inhaltstypen

Wenn Sie bestimmte Elementmetadaten in einem Inhaltstyp nachverfolgen möchten, können Sie auf eine Spalte verweisen, die diese Metadaten darstellt. Allerdings ist es nicht möglich, eine Spalte in einem Inhaltstyp zu erstellen. Sie müssen die Spalte erstellen und dann in der Inhaltstypdefinition darauf verweisen. Wenn Sie deshalb einem Inhaltstyp eine Spalte hinzufügen, enthält das Inhaltstypschema kein Field-Element, sondern ein FieldRef-Element. Dies gilt für Website- und Listenspalten, die Sie Inhaltstypen hinzufügen.

Ein Feldverweis behält dieselbe Feld-ID wie die Spalte, auf die verwiesen wird.

Wenn Sie einen Inhaltstyp basierend auf einem übergeordneten Inhaltstyp erstellen, werden standardmäßig alle Spalten, auf die im übergeordneten Element verwiesen wird, im untergeordneten Inhaltstyp als FieldRef-Elemente dargestellt.

Wenn Sie einer Liste einen Inhaltstyp hinzufügen, werden die Spalten, auf die in diesem Inhaltstyp verwiesen wird, als Listenspalten lokal in die Liste kopiert. Die Spalten, auf die von den verschiedenen FieldRef-Elementen im Inhaltstypschema verwiesen wird, werden als Field-Elemente in das Listenschema kopiert, und zwar wiederum mit den über-/untergeordneten Beziehungen zur Websitespalte.

Wenn Sie auf eine Listenspalte in einem Listeninhaltstyp verweisen, wird sie im Listeninhaltstypschema als FieldRef-Element hinzugefügt.

Deshalb werden Spalten in Website- und Listenschemas immer durch Field-Elemente dargestellt, in Inhaltstypschemas jedoch immer durch FieldRef-Elemente.

Feldverweise in Inhaltstypen werden durch das SPFieldLink-Objekt im Windows SharePoint Services 3.0-Objektmodell dargestellt.

Die folgende Abbildung veranschaulicht diese Beziehung. Angenommen, Sie verweisen auf die Websitespalte Author in einem Inhaltstyp. Im Inhaltstypschema wird der Spaltenverweis durch ein FieldRef-Element dargestellt. Wenn Sie den Inhaltstyp einer Liste hinzufügen, wird die Spalte Author von SharePoint Foundation als Field-Element hinzugefügt. Beide Elemente weisen die gleiche Feld-ID wie die Websitespalte Author auf. Wenn Sie auf die Listenspalte ItemNo im Listeninhaltstyp verweisen, wird diese von SharePoint Foundation mit der gleichen Feld-ID als FieldRef-Element hinzugefügt.

Felder und Feldverweise in Websites und Listen

Siehe auch

Aufgaben

Gewusst wie: Verweisen auf eine Spalte in einem Inhaltstyp

Konzepte

Inhaltstypdefinitionen

Weitere Ressourcen

Inhaltstypen