LinqDataSource.OrderByParameters Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene la raccolta di parametri utilizzati per creare la clausola 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
Valore della proprietà
Parametri utilizzati per la creazione della clausola Order By.
- Attributi
Esempio
Nell'esempio seguente viene illustrato un LinqDataSource controllo con la AutoGenerateOrderByClause proprietà impostata su true. Un parametro è incluso nella OrderByParameters raccolta che ordina i dati in base al nome della proprietà selezionato da un utente da un DropDownList controllo.
<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>
Commenti
Il LinqDataSource controllo usa i parametri nell'insieme OrderByParameters per creare la clausola Order By in fase di esecuzione. In genere si imposta la AutoGenerateOrderByClause proprietà su true quando si aggiungono parametri alla OrderByParameters raccolta. Quando la AutoGenerateOrderByClause proprietà è impostata su true, ogni parametro dell'insieme OrderByParameters viene aggiunto alla clausola Order By nella sequenza specificata nell'insieme OrderByParameters . Quando la AutoGenerateOrderByClause proprietà è true, i parametri non devono essere denominati perché vengono applicati in sequenza e non corrispondono a un segnaposto.
Se non è necessario impostare un valore in fase di esecuzione nella clausola Order By, non è necessario utilizzare la OrderByParameters raccolta. È possibile definire i campi da utilizzare per ordinare i dati nella OrderBy proprietà . Ad esempio, per restituire valori da una tabella di database ordinata da LastName, impostare su OrderBy "LastName" senza parametri.
È possibile impostare i parametri nella OrderByParameters raccolta e associare i parametri ai segnaposto nella OrderBy proprietà , ma questo approccio ha un'applicazione limitata. Quando si usa questo approccio, i parametri nella OrderByParameters raccolta non possono rappresentare un nome di colonna. È possibile impostare un parametro su un valore e quindi confrontarlo con i valori in una proprietà. Ad esempio, è possibile ordinare i dati in base al fatto che i valori di una proprietà siano minori del valore di runtime rappresentato dal parametro .