Condividi tramite


LinqDataSource.SelectParameters Proprietà

Definizione

Ottiene l'insieme di parametri utilizzati durante un'operazione di recupero dati.

public:
 property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { 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 SelectParameters { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection

Valore della proprietà

Parametri utilizzati per creare la clausola Select.

Attributi

Esempio

Nell'esempio seguente viene illustrato come usare un valore fornito dall'utente per calcolare un valore nei dati restituiti. L'utente può immettere un valore nella casella di testo che rappresenta il numero di giorni di produzione. Tale valore è diviso da un valore da un database che rappresenta il numero di giorni per produrre un prodotto. Il valore restituito indica il numero di prodotti che possono essere prodotti durante il numero specificato di giorni. L'input dell'utente è incluso nel comando Select tramite la SelectParameters raccolta.

Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
    AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
    <Columns>
        <asp:boundfield DataField="Name" 
            HeaderText="Name" 
            ReadOnly="True" 
            SortExpression="Name">
        </asp:boundfield>
        <asp:boundfield DataField="NumberToManufacture" 
            HeaderText="Number to Manufacture" 
            ReadOnly="True" 
            SortExpression="NumberToManufacture">
        </asp:boundfield>
    </Columns>
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products"
    Where="DaysToManufacture > 0 "
    Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)" 
    ID="LinqDataSource1" 
    runat="server">
  <SelectParameters>
    <asp:ControlParameter 
        Type="Decimal" 
        Name="Days" 
        ControlID="TextBox1" 
        DefaultValue="1" />
  </SelectParameters>
</asp:LinqDataSource>
Enter number of manufacturing days:
<asp:TextBox Text="1" ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Refresh" /><br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
    AllowSorting="True" AutoGenerateColumns="False" DataSourceID="LinqDataSource1">
    <Columns>
        <asp:boundfield DataField="Name" 
            HeaderText="Name" 
            ReadOnly="True" 
            SortExpression="Name">
        </asp:boundfield>
        <asp:boundfield DataField="NumberToManufacture" 
            HeaderText="Number to Manufacture" 
            ReadOnly="True" 
            SortExpression="NumberToManufacture">
        </asp:boundfield>
    </Columns>
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products"
    Where="DaysToManufacture > 0 "
    Select="new (Name, @Days / DaysToManufacture As NumberToManufacture)" 
    ID="LinqDataSource1" 
    runat="server">
  <SelectParameters>
    <asp:ControlParameter 
        Type="Decimal" 
        Name="Days" 
        ControlID="TextBox1" 
        DefaultValue="1" />
  </SelectParameters>
</asp:LinqDataSource>

Commenti

Il LinqDataSource controllo usa i parametri nella SelectParameters raccolta per creare la clausola Select in fase di esecuzione. Aggiungere parametri alla SelectParameters raccolta quando si desidera usare i valori di runtime nella clausola Select. Ad esempio, è possibile aggiungere un parametro alla SelectParameters raccolta per rappresentare una proprietà nel profilo dell'utente. È quindi possibile usare tale proprietà e un valore dall'origine dati per calcolare un nuovo valore.

Se non è necessario impostare un valore in fase di esecuzione nella clausola Select, non è necessario usare la SelectParameters raccolta. È possibile definire le proprietà da recuperare nella Select proprietà. Ad esempio, per restituire i FirstName valori e LastName da una tabella di database, impostare Select su "FirstName, LastName" senza parametri.

Per impostare i valori nella SelectParameters raccolta, aggiungere un segnaposto nella Select proprietà per il parametro denominato. Nella clausola Select prefazionare ogni nome di parametro con il simbolo @.

Non è possibile usare un parametro nell'insieme SelectParameters per rappresentare un nome di proprietà. Per impostare dinamicamente la Select proprietà sul nome di una proprietà, creare un gestore eventi per l'evento Selecting e personalizzare la proprietà in base alle Select esigenze.

Si applica a