LinqDataSource.OrderByParameters 属性

定义

获取用于创建 Order By 子句的参数集合。

public:
 property System::Web::UI::WebControls::ParameterCollection ^ OrderByParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection OrderByParameters { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.OrderByParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property OrderByParameters As ParameterCollection

属性值

ParameterCollection

用于创建 Order By 子句的参数。

属性

示例

下面的示例显示一个 LinqDataSource 控件,其 AutoGenerateOrderByClause 属性设置为 true。 参数包含在集合中 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>

注解

LinqDataSource 控件使用集合中的 OrderByParameters 参数在运行时创建 Order By 子句。 通常, AutoGenerateOrderByClause 将属性 true 设置为向集合添加参数 OrderByParameters 时。 当属性 AutoGenerateOrderByClause 设置为 true时,集合中的每个 OrderByParameters 参数将添加到集合中指定的 OrderByParameters 序列中的 Order By 子句。 AutoGenerateOrderByClause当属性为true时,参数不必命名,因为它们按顺序应用,并且与占位符不匹配。

如果不必在 Order By 子句的运行时设置值,则无需使用 OrderByParameters 集合。 可以定义用于对属性中的数据进行排序的 OrderBy 字段。 例如,若要从按顺序排序 LastName的数据库表中返回值,请设置为 OrderBy “LastName”,而不带任何参数。

可以在集合中 OrderByParameters 设置参数,并将参数与属性中的 OrderBy 占位符匹配,但此方法的应用程序有限。 使用此方法时,集合中的 OrderByParameters 参数不能表示列名。 可以将参数设置为值,然后将该值与属性中的值进行比较。 例如,可以根据属性中的值是否小于参数表示的运行时值对数据进行排序。

适用于