2009-07-01 1 views
0

Ich bin mir nicht sicher, wie Sie die GroupBy-Klausel beim Abfragen einer Liste verwenden. Die SPListItemCollection oder die Datentabelle sehen unabhängig von der groupby-Klausel genau gleich aus.CAML GroupBy Verwendung beim Abfragen einer Liste mit dem SPQuery oder SPSiteDataQuery-Objekt

SPQuery query = new SPQuery(); 
query.Query = "<GroupBy><FieldRef Name=\"Area\"/></GroupBy>"; 

DataTable result = list.GetItems(query).GetDataTable(); 

// result.Rows.Count = Same as ungrouped query 

Wird GroupBy nur von Lists.asmx webservice unterstützt?

einen Verweis auf MS Social gefunden, die http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/ab8df6f5-35a0-401e-88cb-3eb31362bf0c/

Antwort

2

ich, dass Klausel mehr aufeinander bezogene glaube, es wird nicht unterstützt auf dem SPSiteDataQuery Objekt vorschlägt, ist, wie die Gruppierung wird in der Benutzeroberfläche angezeigt werden. Soweit die Daten zurückgegeben werden, könnten/sollten Sie etwas sortieren, aber das ist es auch schon.

In Bezug auf die Benutzeroberfläche gibt es das GroupLimit-Element, das begrenzt, wie viele Gruppen zurückgegeben werden. Es gibt auch das Collapse-Element, das bei Verwendung mit SPQuery keine Bedeutung hat.

Wie haben Sie gehofft, dass die Daten anders sein würden?

+0

Es sieht so aus, als hätte ich naiv gehofft, dass das Dataset eine Spalte haben könnte, die den gruppierten Wert angibt, oder dass eine Eigenschaft in der liseitem-Auflistung eine hierarchische Ansicht der Daten zur Unterstützung der Gruppierungsstruktur zurückgeben würde . –

+0

Oh! Nein, SharePoint ist nicht so hilfreich, fürchte ich! –

Verwandte Themen