Share via


LinqDataSource.AutoGenerateOrderByClause 属性

定义

获取或设置一个值,该值指示 LinqDataSource 控件是否根据 OrderByParameters 集合中的值动态创建 Order By 子句。

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

属性值

trueLinqDataSource如果控件创建 Order By 子句,则为 ;否则为 false。 默认值为 false

示例

以下示例演示一个LinqDataSource设置为 trueAutoGenerateOrderByClause 控件。 参数包含在 集合中 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>

注解

将 属性设置为 AutoGenerateOrderByClausetrue时, LinqDataSource 控件会动态创建一个 Order By 子句,该子句基于集合中的 OrderByParameters 值。 控件 LinqDataSource 按第一个参数对数据进行排序,然后对每个附加参数的数据进行其他排序。 包含 null 或空值的参数不包括在 Order By 子句中。

当 设置为 trueAutoGenerateOrderByClause,不会设置 OrderBy 属性,因为分析程序会动态创建 Order By 子句。 如果将 AutoGenerateOrderByClause 设置为 true ,并且为 属性赋值,OrderBy控件LinqDataSource将引发异常。

适用于