Condividi tramite


LinqDataSource.OrderGroupsBy Proprietà

Definizione

Ottiene o imposta i campi utilizzati per ordinare i dati raggruppati.

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

Valore della proprietà

String

Stringa utilizzata per creare la clausola Order Groups By.

Esempio

Nell'esempio seguente viene illustrato come raggruppare i dati usando due proprietà e come ordinare i dati raggruppati usando una di queste proprietà. I dati di una tabella denominata Products vengono raggruppati usando le proprietà denominate CategoryID e Discontinued. I dati raggruppati vengono ordinati in base alla CategoryID proprietà .

<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>

Nell'esempio seguente viene illustrato come raggruppare i dati usando una proprietà e come ordinarlo in base ai risultati di una funzione di aggregazione. I dati della Products tabella vengono raggruppati usando la CategoryID proprietà . Viene ordinato in base alla media della proprietà all'interno di UnitPrice ogni gruppo.

<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>

Commenti

Utilizzare la OrderGroupsBy proprietà per specificare la modalità di ordinamento dei gruppi di dati. Ad esempio, è possibile raggruppare in base alla CategoryID proprietà e quindi ordinare ogni gruppo id categoria in base alla media della Price proprietà.

È possibile impostare la OrderGroupsBy proprietà solo quando sono stati raggruppati i dati. Se si imposta la OrderGroupsBy proprietà senza impostare la GroupBy proprietà , il LinqDataSource controllo genera un'eccezione.

La proprietà utilizzata per ordinare i dati deve essere una proprietà utilizzata per raggruppare i dati o il risultato di una funzione di aggregazione sui dati raggruppati. Per specificare la modalità di ordinamento dei dati, è possibile aggiungere uno spazio e la stringa "Ascending", "ASC", "Descending" o "DESC" a un nome di proprietà nella OrderGroupsBy stringa.

È possibile specificare più proprietà nella OrderGroupsBy proprietà . Separare ogni proprietà usando una virgola.

Si applica a