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 l'insieme di parametri usati 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 controllo LinqDataSource con la proprietà AutoGenerateOrderByClause 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 nella OrderByParameters raccolta per creare la clausola Order By in fase di esecuzione. In genere si imposta la AutoGenerateOrderByClause proprietà su true
quando si aggiungono parametri all'insieme OrderByParameters . 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 inferiori al valore di runtime rappresentato dal parametro .