SqlDataSource.FilterParameters Eigenschaft

Definition

Ruft eine Auflistung von Parametern ab, die beliebigen Parameterplatzhaltern in der FilterExpression-Zeichenfolge zugeordnet sind.Gets a collection of parameters that are associated with any parameter placeholders that are in the FilterExpression string.

public:
 property System::Web::UI::WebControls::ParameterCollection ^ FilterParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection FilterParameters { get; }
member this.FilterParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property FilterParameters As ParameterCollection

Eigenschaftswert

Eine ParameterCollection mit einer Reihe von Parametern, die beliebigen Parameterplatzhaltern in der FilterExpression-Eigenschaft zugeordnet sind.A ParameterCollection that contains a set of parameters associated with any parameter placeholders found in the FilterExpression property.

Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Daten aus der Northwind-Datenbank abgerufen und mithilfe der FilterExpression - FilterParameters Eigenschaft und der-Eigenschaft gefiltert werden.The following code example demonstrates how to retrieve data from the Northwind database and filter it using the FilterExpression and FilterParameters properties. Die FilterExpression -Eigenschaft SqlDataSource des-Steuer Elements wird immer Select dann angewendet, wenn die-Methode ausgeführt wird, um Daten abzurufen.The FilterExpression property of the SqlDataSource control is applied anytime the Select method is executed to retrieve data. In diesem Beispiel enthält die FilterExpression -Eigenschaft einen Platzhalter für einen Filter Parameter, der in der FilterParameters -Auflistung enthalten ist.In this example, the FilterExpression property contains a placeholder for a filter parameter, which is contained in the FilterParameters collection. Außerdem ist der Filter-Parameter ein ControlParameter -Objekt, das an die SelectedValue -Eigenschaft des DropDownList -Steuer Elements gebunden ist.In addition, the filter parameter is a ControlParameter object that is bound to the SelectedValue property of the DropDownList control. Da für DropDownList das-Steuer AutoPostBack Element die- trueEigenschaft auf festgelegt ist DropDownList , wird durch jede Änderung in der Auswahl die Seite an den Server GridView zurückgesendet, und das Steuerelement wird an das Datenquellen-Steuerelement erneut gebunden. neuer Filter.Because the DropDownList control has its AutoPostBack property set to true, any change in the DropDownList selection causes the page to post information back to the server and the GridView control to rebind to the data source control with the new filter.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
        <form id="form1" runat="server">

            <p>Show all employees with the following title:
            <asp:DropDownList
                id="DropDownList1"
                runat="server"
                AutoPostBack="True">
                <asp:ListItem Selected="True">Sales Representative</asp:ListItem>
                <asp:ListItem>Sales Manager</asp:ListItem>
                <asp:ListItem>Vice President, Sales</asp:ListItem>
            </asp:DropDownList></p>

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
                FilterExpression="Title='{0}'">
                <FilterParameters>
                    <asp:ControlParameter Name="Title" ControlId="DropDownList1" PropertyName="SelectedValue"/>
                </FilterParameters>
            </asp:SqlDataSource>

            <p><asp:GridView
                id="GridView1"
                runat="server"
                DataSourceID="SqlDataSource1"
                AutoGenerateColumns="False">
                <columns>
                    <asp:BoundField Visible="False" DataField="EmployeeID" />
                    <asp:BoundField HeaderText="First Name" DataField="FirstName" />
                    <asp:BoundField HeaderText="Last Name" DataField="LastName" />
                </columns>
            </asp:GridView></p>

        </form>
    </body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
        <form id="form1" runat="server">

            <p>Show all employees with the following title:
            <asp:DropDownList
                id="DropDownList1"
                runat="server"
                AutoPostBack="True">
                <asp:ListItem Selected="True">Sales Representative</asp:ListItem>
                <asp:ListItem>Sales Manager</asp:ListItem>
                <asp:ListItem>Vice President, Sales</asp:ListItem>
            </asp:DropDownList></p>

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
                FilterExpression="Title='{0}'">
                <FilterParameters>
                    <asp:ControlParameter Name="Title" ControlId="DropDownList1" PropertyName="SelectedValue"/>
                </FilterParameters>
            </asp:SqlDataSource>

            <p><asp:GridView
                id="GridView1"
                runat="server"
                DataSourceID="SqlDataSource1"
                AutoGenerateColumns="False">
                <columns>
                    <asp:BoundField Visible="False" DataField="EmployeeID" />
                    <asp:BoundField HeaderText="First Name" DataField="FirstName" />
                    <asp:BoundField HeaderText="Last Name" DataField="LastName" />
                </columns>
            </asp:GridView></p>

        </form>
    </body>
</html>

Hinweise

Die Parameter in der FilterParameters Auflistung sind mit allen Parametern verknüpft, die in der FilterExpression -Eigenschaft angegeben sind.The parameters in the FilterParameters collection are associated with any parameters that are specified in the FilterExpression property. Die Parameter Platzhalter, die in der FilterExpression -Eigenschaft angegeben sind, werden bei Aufruf der Select - FilterParameters Methode anhand von Order to Parameter-Objekten in der-Auflistung abgeglichen.The parameter placeholders that are specified in the FilterExpression property are matched by order to parameter objects in the FilterParameters collection when the Select method is called.

Die FilterParameters -Eigenschaft ruft die FilterParameters -Eigenschaft ab SqlDataSourceView , die im-Objekt enthalten ist, das SqlDataSource dem-Steuerelement zugeordnet ist.The FilterParameters property retrieves the FilterParameters property that is contained by the SqlDataSourceView object that is associated with the SqlDataSource control.

Wichtig

Werte werden ohne Validierung in Parameter eingefügt, was ein potenzielles Sicherheitsrisiko darstellt.Values are inserted into parameters without validation, which is a potential security threat. Verwenden Sie Filtering das-Ereignis, um Parameterwerte vor dem Ausführen der Abfrage zu überprüfen.Use the Filtering event to validate parameter values before executing the query. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.For more information, see Script Exploits Overview.

Gilt für:

Siehe auch