Bagikan melalui


SqlDataSource.FilterExpression Properti

Definisi

Mendapatkan atau mengatur ekspresi pemfilteran yang diterapkan saat metode dipanggil 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

Nilai Properti

String yang mewakili ekspresi pemfilteran yang diterapkan saat data diambil menggunakan Select(DataSourceSelectArguments) metode .

Pengecualian

Properti FilterExpression telah diatur dan SqlDataSource dalam DataReader mode .

Contoh

Contoh kode berikut menunjukkan cara mengambil data dari database Northwind dan memfilternya menggunakan FilterExpression string dan FilterParameters koleksi. Properti FilterExpression diterapkan setiap kali Select metode dijalankan untuk mengambil data. Dalam contoh ini, FilterExpression berisi tempat penampung untuk parameter filter, yang terkandung dalam FilterParameters koleksi. Selain itu, parameter filter adalah ControlParameter objek yang terikat ke SelectedValue properti DropDownList kontrol. DropDownList Karena kontrol memiliki properti yang AutoPostBack diatur ke true, setiap perubahan dalam pilihan untuk DropDownList kontrol menyebabkan halaman memposting informasi kembali ke server dan GridView kontrol untuk mengikat kembali ke kontrol sumber data dengan filter baru.

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

Keterangan

Nilai FilterExpression properti adalah ekspresi string format (string yang diproses oleh String.Format metode ) yang menggunakan nilai dalam FilterExpression koleksi untuk parameter substitusi apa pun yang disertakan dalam string. Sintaks ekspresi filter adalah sintaks yang sama yang diterima oleh RowFilter properti , karena ekspresi filter diterapkan ke RowFilter properti DataView objek yang dikembalikan dari menjalankan Select metode . Untuk informasi selengkapnya, lihat Expression.

Jika Anda menambahkan parameter ke FilterParameters koleksi, Anda juga dapat menyertakan tempat penampung string format (misalnya, "{0}") dalam ekspresi untuk mengganti nilai parameter. Tempat penampung diganti sesuai dengan indeks parameter dalam FilterParameters koleksi. Jika objek dalam FilterParameters koleksi adalah null, objek akan digantikan oleh string kosong.

Anda dapat menyertakan parameter dalam FilterExpression properti . Jika parameter adalah string atau jenis karakter, sertakan parameter dalam tanda kutip tunggal. Tanda kutip tidak diperlukan, jika parameter adalah jenis numerik. Koleksi FilterParameters berisi parameter yang dievaluasi untuk tempat penampung yang ditemukan di FilterExpression properti .

Kontrol SqlDataSource mendukung pemfilteran data hanya saat dalam DataSet mode .

Properti FilterExpression mendelegasikan ke FilterExpression properti SqlDataSourceView objek yang terkait dengan SqlDataSource kontrol.

Berlaku untuk

Lihat juga