Share via


LinqDataSource.OrderGroupsBy Eigenschaft

Definition

Ruft die Felder ab, die für das Sortieren von gruppierten Daten verwendet werden, oder legt sie fest.

public:
 property System::String ^ OrderGroupsBy { System::String ^ get(); void set(System::String ^ value); };
public string OrderGroupsBy { get; set; }
member this.OrderGroupsBy : string with get, set
Public Property OrderGroupsBy As String

Eigenschaftswert

String

Eine Zeichenfolge, die zum Erstellen der Order Groups By-Klausel verwendet wird.

Beispiele

Das folgende Beispiel zeigt, wie Sie die Daten mithilfe von zwei Eigenschaften gruppieren und die gruppierten Daten mithilfe einer dieser Eigenschaften sortieren. Die Daten aus einer Tabelle namens Products werden mithilfe von Eigenschaften namens CategoryID und Discontinued. Die gruppierten Daten werden nach der CategoryID Eigenschaft sortiert.

<asp:LinqDataSource 
   ContextTypeName="DataClassesDataContext" 
   TableName="Products" 
   GroupBy="new (CategoryID, Discontinued)" 
   OrderGroupsBy="Key.CategoryID"
   Select="new(Key.CategoryID, Key.Discontinued, Average(UnitPrice) As AvePrice)" 
   ID="LinqDataSource1" 
   runat="server" >
</asp:LinqDataSource>
<asp:LinqDataSource 
   ContextTypeName="DataClassesDataContext" 
   TableName="Products" 
   GroupBy="new (CategoryID, Discontinued)" 
   OrderGroupsBy="Key.CategoryID"
   Select="new(Key.CategoryID, Key.Discontinued, Average(UnitPrice) As AvePrice)" 
   ID="LinqDataSource1" 
   runat="server" >
</asp:LinqDataSource>

Das folgende Beispiel zeigt, wie Sie die Daten mithilfe einer Eigenschaft gruppieren und anhand der Ergebnisse einer Aggregationsfunktion sortieren. Die Daten aus der Tabelle werden mithilfe der Products CategoryID Eigenschaft gruppiert. Sie wird basierend auf dem Mittelwert der UnitPrice Eigenschaft innerhalb jeder Gruppe sortiert.

<asp:LinqDataSource 
   ContextTypeName="DataClassesDataContext" 
   TableName="Products" 
   GroupBy="CategoryID" 
   OrderGroupsBy="Average(UnitPrice)"
   Select="new(Key, Average(UnitPrice) As AvePrice)" 
   ID="LinqDataSource1" 
   runat="server" >
</asp:LinqDataSource>
<asp:LinqDataSource 
   ContextTypeName="DataClassesDataContext" 
   TableName="Products" 
   GroupBy="CategoryID" 
   OrderGroupsBy="Average(UnitPrice)"
   Select="new(Key, Average(UnitPrice) As AvePrice)" 
   ID="LinqDataSource1" 
   runat="server" >
</asp:LinqDataSource>

Hinweise

Sie verwenden die OrderGroupsBy Eigenschaft, um anzugeben, wie die Datengruppen sortiert werden. Sie können z. B. nach der CategoryID Eigenschaft gruppieren und dann jede Kategorie-ID-Gruppe nach dem Durchschnitt der Price Eigenschaft sortieren.

Sie können die OrderGroupsBy Eigenschaft nur festlegen, wenn Sie die Daten gruppiert haben. Wenn Sie die OrderGroupsBy Eigenschaft festlegen, ohne die GroupBy Eigenschaft festzulegen, löst das LinqDataSource Steuerelement eine Ausnahme aus.

Die Eigenschaft, die zum Sortieren der Daten verwendet wird, muss entweder eine Eigenschaft sein, die zum Gruppieren der Daten verwendet wird, oder das Ergebnis einer Aggregationsfunktion für die gruppierten Daten. Um anzugeben, wie die Daten sortiert werden, können Sie ein Leerzeichen und die Zeichenfolge "Aufsteigend", "ASC", "Absteigend" oder "DESC" zu einem Eigenschaftennamen in der OrderGroupsBy Zeichenfolge hinzufügen.

Sie können mehrere Eigenschaften in der OrderGroupsBy Eigenschaft angeben. Trennen Sie jede Eigenschaft mithilfe eines Kommas.

Gilt für