Bagikan melalui


SqlDataSource.DeleteParameters Properti

Definisi

Mendapatkan koleksi parameter yang berisi parameter yang digunakan oleh DeleteCommand properti dari SqlDataSourceView objek yang terkait dengan SqlDataSource kontrol.

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

Nilai Properti

ParameterCollection yang berisi parameter yang digunakan oleh DeleteCommand properti .

Atribut

Contoh

Contoh kode berikut menunjukkan cara mengatur DeleteCommand teks untuk menghapus pesanan dari database Northwind. Awalnya, data diambil dari tabel Pesanan dan ditampilkan dalam DropDownList kontrol. Anda harus secara eksplisit mendeklarasikan DeleteParameters properti dan memanggil Delete metode saat menggunakan kontrol terikat data, seperti DropDownList (tidak seperti kontrol lain, seperti GridView dan DetailsView, yang secara otomatis mengisi parameter dan memanggil Delete kontrol sumber data). Dalam contoh ini, OnClick peristiwa didelegasikan ke penanganan aktivitas privat OnDelete , yang secara eksplisit memanggil Delete metode SqlDataSource kontrol.

<%@Page  Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
private void OnDelete(Object sender, EventArgs e) {
    SqlDataSource1.Delete();
}
</script>

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

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                SelectCommand="SELECT OrderID FROM Orders"
                DeleteCommand="DELETE FROM [Order Details] WHERE OrderID=@OrderID;DELETE FROM Orders WHERE OrderID=@OrderID;">
                <DeleteParameters>
                    <asp:ControlParameter Name="OrderID" ControlId="DropDownList1" PropertyName="SelectedValue" />
                </DeleteParameters>
            </asp:SqlDataSource>

            <asp:DropDownList
                id="DropDownList1"
                runat="server"
                DataTextField="OrderID"
                DataValueField="OrderID"
                DataSourceID="SqlDataSource1">
            </asp:DropDownList>

            <asp:Button
                id="Button1"
                runat="server"
                Text="Delete Order"
                OnClick="OnDelete">
            </asp:Button>

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

<script runat="server">
 Sub On_Delete(ByVal sender As Object, ByVal e As EventArgs)
    SqlDataSource1.Delete()
 End Sub 'On_Delete
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title>ASP.NET Example</title>
</head>

    <body>
        <form id="form1" runat="server">

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                SelectCommand="SELECT OrderID FROM Orders"
                DeleteCommand="DELETE FROM [Order Details] WHERE OrderID=@OrderID;DELETE FROM Orders WHERE OrderID=@OrderID;">
                <DeleteParameters>
                    <asp:ControlParameter Name="OrderID" ControlId="DropDownList1" PropertyName="SelectedValue" />
                </DeleteParameters>
            </asp:SqlDataSource>

            <asp:DropDownList
                id="DropDownList1"
                runat="server"
                DataTextField="OrderID"
                DataValueField="OrderID"
                DataSourceID="SqlDataSource1">
            </asp:DropDownList>

            <asp:Button
                id="Button1"
                runat="server"
                Text="Delete Order"
                OnClick="On_Delete">
            </asp:Button>

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

Keterangan

DeleteCommand Jika properti berisi kueri SQL berparameter, DeleteParameters koleksi berisi objek apa pun Parameter yang sesuai dengan tempat penampung parameter dalam string SQL.

Catatan

Pastikan bahwa tidak ada BoundField kontrol dalam kontrol terikat data yang Anda ikat ke SqlDataSource kontrol memiliki nama yang cocok dengan nama parameter apa pun dalam DeleteParameters koleksi. Parameter yang memiliki nama yang sama dengan bidang terikat dikecualikan dari perintah SQL, dan kesalahan "parameter tidak disediakan" mungkin dihasilkan.

ConflictDetection Jika properti diatur ke CompareAllValues nilai , parameter dibuat untuk nilai data lama dan baru. Parameter untuk nilai lama diberi nama sesuai dengan OldValuesParameterFormatString properti .

Bergantung pada penyedia ADO.NET, urutan parameter dalam DeleteParameters koleksi mungkin penting. Penyedia System.Data.OleDb dan System.Data.Odbc mengaitkan parameter dalam koleksi sesuai dengan urutan di mana parameter muncul dalam kueri SQL berparameter. Penyedia System.Data.SqlClient , yang merupakan penyedia ADO.NET default untuk SqlDataSource kontrol, mengaitkan parameter dalam koleksi dengan mencocokkan nama parameter dengan tempat penampung dalam kueri SQL. Untuk informasi selengkapnya tentang kueri dan perintah SQL berparameter, lihat Menggunakan Parameter dengan Kontrol SqlDataSource.

Properti DeleteParameters mengambil DeleteParameters properti yang dimuat oleh SqlDataSourceView objek yang terkait dengan SqlDataSource kontrol.

Penting

Nilai dimasukkan ke dalam parameter tanpa validasi, yang merupakan potensi ancaman keamanan. Deleting Gunakan peristiwa untuk memvalidasi nilai parameter sebelum menjalankan kueri. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.

Berlaku untuk

Lihat juga