SPSiteDataQuery: Filtern von Inhaltstypen in SharePoint 2010
In SharePoint 2007 Ausführung einer SPSiteDataQuery
mit filter für content-Typen wie erwartet funktionierte.
<Where>
<Eq>
<FieldRef Name='ContentType'/>
<Value Type='Text'>SomeContentType</Value>
</Eq>
</Where>
In SharePoint 2010 die gleiche Abfrage gibt nur Elemente aus einer Liste.
Eine mögliche Abhilfe wäre, um filter auf den Inhaltstyp-id. Ein "BeginsWith" - operator verwendet werden, da die "Liste " Inhaltstyp" erbt von der "site content type":
<Where>
<BeginsWith>
<FieldRef Name='ContentTypeID'/>
<Value Type='Text'>SomeContentTypeId</Value>
</BeginsWith>
</Where>
Aber das würde passen alle Elemente, die mit diesem Inhaltstyp oder alle geerbten Inhalte geben. Das ist nicht das, was ich will.
Weiß jemand, wie man erstellen Sie eine SPSiteDataQuery
mit content-type-filter?
Ich mag die Schönheit des seins in der Lage, wählen Sie alle vererbten Inhaltstypen. Warum wählen Sie die ID mithilfe
Es ist nicht ein
Du hast Recht, sorry. Aber
Hast du eine Lösung für dieses? Etwas seltsam ist, die ich miterlebt habe, die mit dem Inhaltstyp-name ist wie folgt :
Hierarchie der
BeginsWith
stattdessen können Sie auswählen, welche Inhaltstypen oder sogar EndsWith
?!Es ist nicht ein
EndsWith
element in CAML, ist es?Du hast Recht, sorry. Aber
Contains
existiert.Hast du eine Lösung für dieses? Etwas seltsam ist, die ich miterlebt habe, die mit dem Inhaltstyp-name ist wie folgt :
Hierarchie der
Home > News > multiple year webs
. Inhalte Arten befinden sich innerhalb von Jahr webs! Eine Abfrage bei den root gibt nichts, wo so eine Abfrage an der 'News' - Ebene tut etwas zurückgeben. Also, Es kann cross-Liste!? nur nicht bei der root-Ebene. BUG!?InformationsquelleAutor Stefan | 2010-09-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dieses (siehe die berechnet Wert-Typ):
InformationsquelleAutor Nico