LinqDataSource.OrderByParameters Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Auflistung von Parametern ab, die zum Erstellen der Order By -Klausel verwendet werden.
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
Eigenschaftswert
Die Parameter, die zum Erstellen der Order By-Klausel verwendet werden.
- Attribute
Beispiele
Das folgende Beispiel zeigt ein LinqDataSource Steuerelement, auf das die AutoGenerateOrderByClause Eigenschaft festgelegt ist true. Ein Parameter ist in der Auflistung enthalten, in der OrderByParameters die Daten basierend auf dem Eigenschaftennamen sortiert werden, den ein Benutzer aus einem DropDownList Steuerelement auswählt.
<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>
Hinweise
Das LinqDataSource Steuerelement verwendet Parameter in der OrderByParameters Auflistung, um die Order By-Klausel zur Laufzeit zu erstellen. In der Regel legen Sie die AutoGenerateOrderByClause Eigenschaft fest, true wenn Sie der OrderByParameters Auflistung Parameter hinzufügen. Wenn die true, müssen die Parameter nicht benannt werden, da sie in Sequenz angewendet werden und nicht mit einem Platzhalter übereinstimmen.
Wenn Sie zur Laufzeit keinen Wert in der Order By-Klausel festlegen müssen, müssen Sie die OrderByParameters Auflistung nicht verwenden. Sie können die Felder definieren, die zum Sortieren der Daten in der OrderBy Eigenschaft verwendet werden sollen. Wenn Sie z. B. Werte aus einer Datenbanktabelle zurückgeben möchten, nach der sortiert LastNamewird, legen Sie OrderBy sie ohne Parameter auf "Nachname" fest.
Sie können Parameter in der OrderByParameters Auflistung festlegen und den Parametern den Platzhaltern in der OrderBy Eigenschaft entsprechen, dieser Ansatz hat jedoch eine eingeschränkte Anwendung. Wenn Sie diesen Ansatz verwenden, können die Parameter in der OrderByParameters Auflistung keinen Spaltennamen darstellen. Sie können einen Parameter auf einen Wert festlegen und dann diesen Wert mit Werten in einer Eigenschaft vergleichen. Beispielsweise können Sie die Daten basierend darauf sortieren, ob die Werte in einer Eigenschaft kleiner als der durch den Parameter dargestellte Laufzeitwert sind.