다음을 통해 공유


SqlDataSource.FilterExpression 속성

정의

Select(DataSourceSelectArguments) 메서드가 호출될 때 적용되는 필터링 식을 가져오거나 설정합니다.

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

속성 값

Select(DataSourceSelectArguments) 메서드를 사용하여 데이터가 검색될 때 적용되는 필터링 식을 나타내는 문자열입니다.

예외

FilterExpression 속성이 설정되었고 SqlDataSourceDataReader 모드인 경우

예제

다음 코드 예제에서는 Northwind 데이터베이스에서 데이터를 검색 하 고 사용 하 여 필터링 하는 방법을 보여 줍니다.는 FilterExpression 문자열 및 FilterParameters 컬렉션입니다. FilterExpression 속성에는 언제 든 지 적용 되는 Select 데이터를 검색할 메서드를 실행 합니다. 이 예제에서는 합니다 FilterExpression 에 포함 된 필터 매개 변수에 대 한 자리 표시자를 포함 합니다 FilterParameters 컬렉션입니다. 또한 filter 매개 변수는를 ControlParameter 바인딩되는 개체를 SelectedValue 의 속성을 DropDownList 컨트롤. 때문에 DropDownList 컨트롤에 해당 AutoPostBack 속성이로 설정 true에 대 한 선택 변경 합니다 DropDownList 컨트롤이 서버에 대 한 정보를 게시 하는 페이지 및 GridView 데이터 원본에 바인딩할 컨트롤 새 필터를 사용 하 여 제어 합니다.

<!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>

설명

FilterExpression 속성 값은 형식 문자열 식 (에 의해 처리 되는 문자열을 String.Format 메서드)의 값을 사용 하는 FilterExpression 문자열에 포함 된 대체 매개 변수 컬렉션입니다. 필터 식 구문은에 허용 되는 동일한 구문을 RowFilter 속성을 필터 식에 적용 되므로 RowFilter 의 속성을 DataView 실행에서 반환 되는 개체를 Select 메서드. 자세한 내용은 Expression를 참조하세요.

매개 변수를 추가 하는 경우는 FilterParameters 컬렉션 형식 문자열 자리 표시자를 포함할 수도 있습니다 (예를 들어 "{0}") 매개 변수 값에 대 한 대체 식에 있습니다. 매개 변수의 인덱스에 따라 자리 표시자는는 FilterParameters 컬렉션입니다. 경우에 개체를 FilterParameters 수집은 null, 개체를 빈 문자열로 바뀝니다.

매개 변수는 FilterExpression 속성입니다. 매개 변수 문자열 또는 문자 형식이 면 매개 변수를 작은따옴표로 묶습니다. 매개 변수가 숫자 형식인 경우 따옴표가 필요 없습니다. 합니다 FilterParameters 컬렉션에 있는 자리 표시자에 대 한 계산 되는 매개 변수를 포함 합니다 FilterExpression 속성입니다.

합니다 SqlDataSource 제어 데이터 필터링을 지원의 경우에만 DataSet 모드입니다.

FilterExpression 에 위임 하는 속성을 FilterExpression 의 속성을 SqlDataSourceView 개체와 연결 된는 SqlDataSource 컨트롤.

적용 대상

추가 정보