LinqDataSource.OrderByParameters Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera kolekcję parametrów używanych do tworzenia klauzuli 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
Wartość właściwości
Parametry używane do tworzenia klauzuli Order By.
- Atrybuty
Przykłady
W poniższym przykładzie pokazano kontrolkę LinqDataSource z właściwością ustawioną AutoGenerateOrderByClause na true
wartość . Parametr jest uwzględniany w OrderByParameters kolekcji, która porządkuje dane na podstawie nazwy właściwości wybranej przez użytkownika z kontrolki 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>
Uwagi
Kontrolka LinqDataSource używa parametrów w OrderByParameters kolekcji do utworzenia klauzuli Order By w czasie wykonywania. Zazwyczaj właściwość jest ustawiana AutoGenerateOrderByClause na true
wartość podczas dodawania parametrów do kolekcji OrderByParameters . Gdy właściwość jest ustawiona AutoGenerateOrderByClause na true
wartość , każdy parametr w OrderByParameters kolekcji jest dodawany do klauzuli Order By w sekwencji określonej w kolekcji OrderByParameters .
AutoGenerateOrderByClause Gdy właściwość ma true
wartość , parametry nie muszą być nazwane, ponieważ są stosowane w sekwencji i nie są dopasowywane do symbolu zastępczego.
Jeśli nie musisz ustawiać wartości w czasie wykonywania w klauzuli Order By, nie musisz używać kolekcji OrderByParameters . Pola, które mają być używane do porządkowania danych we OrderBy właściwości . Na przykład, aby zwrócić wartości z tabeli bazy danych uporządkowanej przez LastName
, ustaw wartość OrderBy "LastName" bez żadnych parametrów.
Parametry w OrderByParameters kolekcji można ustawić i dopasować parametry do symboli zastępczych we OrderBy właściwości, ale takie podejście ma ograniczoną aplikację. W przypadku korzystania z tej metody parametry w OrderByParameters kolekcji nie mogą reprezentować nazwy kolumny. Możesz ustawić parametr na wartość, a następnie porównać wartość z wartościami we właściwości. Na przykład można uporządkować dane na podstawie tego, czy wartości we właściwości są mniejsze niż wartość czasu wykonywania reprezentowana przez parametr .