Compartir a través de


LinqDataSource.SelectParameters Propiedad

Definición

Obtiene la colección de parámetros que se usan durante una operación de recuperación de datos.

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

Valor de propiedad

Parámetros que se utilizan para crear la cláusula Select.

Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo usar un valor proporcionado por el usuario para calcular un valor en los datos devueltos. El usuario puede escribir un valor en el cuadro de texto que representa el número de días de fabricación. Ese valor se divide por un valor de una base de datos que representa el número de días para fabricar un producto. El valor devuelto indica cuántos productos se pueden fabricar durante el número de días especificado. La entrada del usuario se incluye en el comando Seleccionar a través de la SelectParameters colección.

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>

Comentarios

El LinqDataSource control usa parámetros en la SelectParameters colección para crear la cláusula Select en tiempo de ejecución. Los parámetros se agregan a la SelectParameters colección cuando se quieren usar valores en tiempo de ejecución en la cláusula Select. Por ejemplo, puede agregar un parámetro a la SelectParameters colección para representar una propiedad en el perfil del usuario. A continuación, puede usar esa propiedad y un valor del origen de datos para calcular un nuevo valor.

Si no tiene que establecer un valor en tiempo de ejecución en la cláusula Select, no tiene que usar la SelectParameters colección. Puede definir las propiedades que se van a recuperar en la Select propiedad . Por ejemplo, para devolver los FirstName valores y LastName de una tabla de base de datos, establezca Select en "FirstName, LastName" sin parámetros.

Para establecer valores en la SelectParameters colección, agregue un marcador de posición en la Select propiedad para el parámetro con nombre. En la cláusula Select, antepone cada nombre de parámetro con el símbolo @ .

No se puede usar un parámetro en la SelectParameters colección para representar un nombre de propiedad. Para establecer dinámicamente la Select propiedad en el nombre de una propiedad, cree un controlador de eventos para el Selecting evento y personalice la Select propiedad según sea necesario.

Se aplica a