Поделиться через


LinqDataSource.AutoGenerateOrderByClause Свойство

Определение

Возвращает или задает значение, указывающее, динамически ли LinqDataSource элемент управления создает предложение Order By на основе значений OrderByParameters в коллекции.

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

Значение свойства

true Значение LinqDataSource , если элемент управления создает предложение Order By; в противном случае false. Значение по умолчанию — false.

Примеры

В следующем примере показан LinqDataSource элемент управления с заданным значением AutoGenerateOrderByClausetrue. Параметр включается в OrderByParameters коллекцию, которая упорядочивает данные на основе имени свойства, выбранного пользователем DropDownList из элемента управления.

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

Комментарии

При установке AutoGenerateOrderByClause свойства элемент управления динамически создает предложение LinqDataSourcetrueOrder By, основанное на значениях OrderByParameters в коллекции. Элемент LinqDataSource управления сортирует данные по первому параметру, а затем дополнительно сортирует данные для каждого дополнительного параметра. Параметры, содержащие null или пустые значения, не включены в предложение Order By.

Если задано trueзначение, свойство AutoGenerateOrderByClause не заданоOrderBy, так как средство синтаксического анализа динамически создает предложение Order By. Элемент LinqDataSource управления создает исключение, если AutoGenerateOrderByClause задано true значение и OrderBy свойство присваивается значения.

Применяется к