LinqDataSourceSelectEventArgs.SelectParameters Propriedade

Definição

Obtém a coleção de parâmetros que é usada para criar a cláusula Select.

public:
 property System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ SelectParameters { System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ get(); };
public System.Collections.Generic.IDictionary<string,object> SelectParameters { get; }
member this.SelectParameters : System.Collections.Generic.IDictionary<string, obj>
Public ReadOnly Property SelectParameters As IDictionary(Of String, Object)

Valor de Propriedade

Um objeto que contém os parâmetros para a cláusula Select.

Exemplos

O exemplo seguinte mostra como adicionar um parâmetro à SelectParameters coleção. O parâmetro adicional é usado para calcular um preço ajustado para um produto com base em se os produtos estão em desconto. A primeira parte do exemplo mostra o gestor de eventos do Selecting evento.

protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    if (IsOnlineSale)
    {
        e.SelectParameters.Add("Discount", OnlineDiscount);
    }
    else
    {
        e.SelectParameters.Add("Discount", 0);
    }
}
Protected Sub LinqDataSource_Selecting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceSelectEventArgs)
    If (IsOnlineSale) Then
        e.SelectParameters.Add("Discount", OnlineDiscount)
    Else
        e.SelectParameters.Add("Discount", 0)
    End If
End Sub

A segunda parte do exemplo mostra a marcação que define a cláusula Select.

<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    AutoGenerateWhereClause="true"
    Select="new(Name, Price * (1 - @Discount) As OnlinePrice)"
    OnSelecting="LinqDataSource_Selecting" 
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1" 
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products"            
    Select="new(Name, Price * (1 - @Discount) As OnlinePrice)"
    OnSelecting="LinqDataSource_Selecting" 
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1" 
    ID="GridView1" 
    runat="server">
</asp:GridView>

Observações

Usas a SelectParameters propriedade para aceder aos parâmetros da cláusula Select num handler para o Selecting evento. Pode modificar a cláusula Select adicionando ou removendo parâmetros desta coleção. Por defeito, a SelectParameters propriedade do LinqDataSourceSelectEventArgs objeto contém quaisquer parâmetros que adicionaste ao SelectParametersLinqDataSource controlo.

Aplica-se a

Ver também