LinqDataSource.AutoGenerateOrderByClause Propriedade

Definição

Obtém ou define um valor que indica se o controlo LinqDataSource cria dinamicamente uma cláusula Order By com base nos valores da OrderByParameters coleção.

public:
 property bool AutoGenerateOrderByClause { bool get(); void set(bool value); };
public bool AutoGenerateOrderByClause { get; set; }
member this.AutoGenerateOrderByClause : bool with get, set
Public Property AutoGenerateOrderByClause As Boolean

Valor de Propriedade

true se o controlo LinqDataSource criar a cláusula Order By; caso contrário, false. A predefinição é false.

Exemplos

O exemplo seguinte mostra um LinqDataSource controlo com o AutoGenerateOrderByClause conjunto de .true Um parâmetro é incluído na OrderByParameters coleção que ordena os dados com base no nome da propriedade que o utilizador seleciona a partir de um DropDownList controlo.

<asp:DropDownList AutoPostBack="true" ID="DropDownList1" runat="server">
    <asp:ListItem Value="Category"></asp:ListItem>
    <asp:ListItem Value="Price"></asp:ListItem>
</asp:DropDownList>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    AutoGenerateOrderByClause="true"
    ID="LinqDataSource1" 
    runat="server">
    <OrderByParameters>
      <asp:ControlParameter
         ControlID="DropDownList1" 
         Type="String" />
    </OrderByParameters>
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:DropDownList AutoPostBack="true" ID="DropDownList1" runat="server">
    <asp:ListItem Value="Category"></asp:ListItem>
    <asp:ListItem Value="Price"></asp:ListItem>
</asp:DropDownList>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    AutoGenerateOrderByClause="true"
    ID="LinqDataSource1" 
    runat="server">
    <OrderByParameters>
      <asp:ControlParameter
         ControlID="DropDownList1" 
         Type="String" />
    </OrderByParameters>
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>

Observações

Quando defines a AutoGenerateOrderByClause propriedade para true, o LinqDataSource controlo cria dinamicamente uma cláusula Order By baseada nos valores da OrderByParameters coleção. O LinqDataSource controlo ordena os dados pelo primeiro parâmetro e depois ordena adicionalmente os dados para cada parâmetro adicional. Parâmetros que contêm null ou um valor vazio não estão incluídos na cláusula Order By.

Não defines a OrderBy propriedade quando o AutoGenerateOrderByClause está definido para true, porque o analisador cria dinamicamente a cláusula Order By. O LinqDataSource controlo lança uma exceção se o AutoGenerateOrderByClause for definido como true e a OrderBy propriedade for atribuída a valores.

Aplica-se a