Wenn ich nach Dokumentation über das Erstellen von contenttypes mit Code (C #) suche, finde ich immer Beispiele, die einen SPFieldLink verwenden, um zu einem vorhandenen Feld der Site zu verknüpfen und dieses über
hinzuzufügen %Vor%Aber es gibt auch eine Methode, um Felder direkt hinzuzufügen. Gibt es einen guten Grund, warum ich Felder nicht einfach mit
hinzufügen sollte %Vor%?!?
Danke im Voraus
Es scheint einen einfachen Grund zu geben, wie ich es jetzt herausgefunden habe: Es funktioniert einfach nicht bei ContentTypes. Beim Versuch, ein Feld direkt hinzuzufügen, sendet SP2010 eine Ausnahme:
Ich habe das absolut nicht erwartet (auch nicht die spanische Inquisition), aber es scheint einfach nicht möglich zu sein.Diese Funktionalität ist für Feldauflistungen, die keiner Liste zugeordnet sind, nicht verfügbar.
Es kann hilfreich sein, das XML nach einer Liste zu suchen.
Hier ist das XML für den Ankündigungsinhaltstyp:
%Vor%Hier ist das XML für die Ankündigungsliste:
%Vor%Listen haben Felder. Inhaltstypen haben FieldRefs.
Ich bin mir nicht sicher, ob das genau richtig ist, aber ich beschreibe es immer als den Unterschied zwischen Klassen und Interfaces oder abstrakten Klassen. Ein Inhaltstyp ist die Definition für eine Liste, enthält aber wie eine Schnittstelle keine Daten oder Funktionen. Da Felder Daten und Funktionen enthalten, haben Inhaltstypen (die von einer Liste getrennt sind) keine Felder, sie haben FeldRefs. YMMV - aber das hilft mir immer, sie richtig zu halten.
Tags und Links c# sharepoint sharepoint-2010 content-type