SqlDataSource.FilterExpression Eigenschaft

Definition

Ruft einen Filterausdruck ab, der angewendet wird, wenn die Select(DataSourceSelectArguments)-Methode aufgerufen wird, oder legt diesen fest.Gets or sets a filtering expression that is applied when the Select(DataSourceSelectArguments) method is called.

public:
 property System::String ^ FilterExpression { System::String ^ get(); void set(System::String ^ value); };
public string FilterExpression { get; set; }
member this.FilterExpression : string with get, set
Public Property FilterExpression As String

Eigenschaftswert

Eine Zeichenfolge, die einen Filterausdruck darstellt, der angewendet wird, wenn Daten mithilfe der Select(DataSourceSelectArguments)-Methode abgerufen werden.A string that represents a filtering expression applied when data is retrieved using the Select(DataSourceSelectArguments) method.

Ausnahmen

Die FilterExpression-Eigenschaft wurde festgelegt und SqlDataSource befindet sich im DataReader-Modus.The FilterExpression property was set and the SqlDataSource is in DataReader mode.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Daten aus der Northwind-Datenbank abgerufen und mithilfe einer FilterExpression Zeichenfolge und FilterParameters der-Auflistung gefiltert werden.The following code example demonstrates how to retrieve data from the Northwind database and filter it using a FilterExpression string and the FilterParameters collection. Die FilterExpression -Eigenschaft wird jedes Mal angewendet Select , wenn die-Methode ausgeführt wird, um Daten abzurufen.The FilterExpression property is applied any time the Select method is executed to retrieve data. In diesem Beispiel FilterExpression enthält ein Platzhalter für einen Filter Parameter, der in der FilterParameters -Auflistung enthalten ist.In this example, the FilterExpression 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 die DropDownList - AutoPostBack Eigenschaft des-Steuer Elements trueauf festgelegt ist, bewirkt jede Änderung DropDownList in der Auswahl für das-Steuerelement, dass die Seite Informationen GridView an den Server zurücksendet und das-Steuerelement erneut an die Datenquelle gebunden wird. Steuern Sie mit dem neuen Filter.Because the DropDownList control has its AutoPostBack property set to true, any change in the selection for the DropDownList control 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

Der FilterExpression -Eigenschafts Wert ist ein Formatzeichen folgen Ausdruck (eine Zeichenfolge, String.Format die von der-Methode verarbeitet wird) FilterExpression , der die Werte in der-Auflistung für alle in der Zeichenfolge enthaltenen Ersetzungs Parameter verwendet.The FilterExpression property value is a format string expression (a string that is processed by the String.Format method) that uses the values in the FilterExpression collection for any substitution parameters included in the string. Die Filter Ausdruckssyntax ist die gleiche Syntax, RowFilter die von der-Eigenschaft akzeptiert wird, da der Filter Ausdruck auf die RowFilter -Eigenschaft des DataView -Objekts angewendet wird, das beim Ausführen der Select -Methode zurückgegeben wird.The filter expression syntax is the same syntax that is accepted by the RowFilter property, because the filter expression is applied to the RowFilter property of the DataView object that is returned from executing the Select method. Weitere Informationen finden Sie unter Expression.For more information, see Expression.

Wenn Sie der FilterParameters Auflistung Parameter hinzufügen, können Sie auch Format Zeichenfolgen-Platzhalter einschließen "{0}") (z. b. im Ausdruck, um Parameterwerte zu ersetzen.If you add parameters to the FilterParameters collection, you can also include format string placeholders (for example, "{0}") in the expression to substitute for parameter values. Die Platzhalter werden nach dem Index des-Parameters in der FilterParameters -Auflistung ersetzt.The placeholders are replaced according to the index of the parameter in the FilterParameters collection. Wenn ein Objekt in der FilterParameters Auflistung ist null, wird das Objekt durch eine leere Zeichenfolge ersetzt.If an object in the FilterParameters collection is null, the object will be replaced by an empty string.

Sie können Parameter in die FilterExpression -Eigenschaft einschließen.You can include parameters in the FilterExpression property. Wenn der-Parameter eine Zeichenfolge oder ein Zeichentyp ist, müssen Sie den-Parameter in einfache Anführungszeichen einschließen.If the parameter is a string or character type, enclose the parameter in single quotation marks. Anführungszeichen sind nicht erforderlich, wenn es sich bei dem Parameter um einen numerischen Typ handelt.Quotation marks are not required, if the parameter is a numeric type. Die FilterParameters -Auflistung enthält die Parameter, die für die Platzhalter ausgewertet werden, die FilterExpression in der-Eigenschaft gefunden werden.The FilterParameters collection contains the parameters that are evaluated for the placeholders that are found in the FilterExpression property.

Das SqlDataSource -Steuerelement unterstützt das Filtern von DataSet Daten nur im-Modus.The SqlDataSource control supports filtering data only when in the DataSet mode.

Die FilterExpression -Eigenschaft delegiert an FilterExpression die-Eigenschaft SqlDataSourceView des-Objekts, das dem SqlDataSource -Steuerelement zugeordnet ist.The FilterExpression property delegates to the FilterExpression property of the SqlDataSourceView object that is associated with the SqlDataSource control.

Gilt für:

Siehe auch