LinqDataSource.OrderGroupsBy Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece los campos que se utilizan para ordenar los datos agrupados.
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
Valor de propiedad
Cadena que se usa para crear la cláusula Order Groups By.
Ejemplos
En el ejemplo siguiente se muestra cómo agrupar los datos mediante dos propiedades y cómo ordenar los datos agrupados mediante una de esas propiedades. Los datos de una tabla denominada Products
se agrupan mediante las propiedades denominadas CategoryID
y Discontinued
. Los datos agrupados se ordenan por la CategoryID
propiedad .
<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>
En el ejemplo siguiente se muestra cómo agrupar los datos mediante una propiedad y cómo ordenarlos en función de los resultados de una función de agregación. Los datos de la Products
tabla se agrupan mediante la CategoryID
propiedad . Se ordena según el promedio de la UnitPrice
propiedad dentro de cada grupo.
<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>
Comentarios
Use la OrderGroupsBy propiedad para especificar cómo se ordenan los grupos de datos. Por ejemplo, puede agrupar por la CategoryID
propiedad y, a continuación, ordenar cada grupo de identificadores de categoría por el promedio de la Price
propiedad.
Solo puede establecer la OrderGroupsBy propiedad cuando haya agrupado los datos. Si establece la OrderGroupsBy propiedad sin establecer la GroupBy propiedad , el LinqDataSource control produce una excepción.
La propiedad que se usa para ordenar los datos debe ser una propiedad que se usa para agrupar los datos o el resultado de una función de agregación en los datos agrupados. Para especificar cómo se ordenan los datos, puede agregar un espacio y la cadena "Ascending", "ASC", "Descending" o "DESC" a un nombre de propiedad en la OrderGroupsBy cadena.
Puede especificar más de una propiedad en la OrderGroupsBy propiedad . Separe cada propiedad mediante una coma.