SqlDataSource.Delete Yöntem

Tanım

SQL dizesini ve koleksiyondaki DeleteCommandDeleteParameters parametreleri kullanarak silme işlemi gerçekleştirir.

public:
 int Delete();
public int Delete ();
member this.Delete : unit -> int
Public Function Delete () As Integer

Döndürülenler

Temel alınan veritabanından silinen satır sayısını temsil eden değer.

Özel durumlar

, SqlDataSource temel alınan veri kaynağıyla bağlantı kuramıyor.

Örnekler

Aşağıdaki kod örneği, Northwind veritabanından DeleteCommand bir siparişi silmek için metnin nasıl ayarlandığını gösterir. Başlangıçta, veriler Orders tablosundan alınır ve bir DropDownList denetimde görüntülenir. gibi veriye bağlı denetimleri kullanırken (parametreleri otomatik olarak dolduran ve bir veri kaynağı denetiminde DeleteDropDownList yöntemini çağıran ve DetailsViewgibi diğer denetimlerden farklı olarakGridView) özelliğini açıkça bildirmeniz DeleteParameters ve yöntemini çağırmanız Delete gerekir. Bu örnekte olay, OnClick denetimin yöntemini açıkça çağıran Delete özel OnDelete olay işleyicisine temsilci olarak atanmıştırSqlDataSource.

<%@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>

Açıklamalar

Silme işlemi gerçekleştirilmeden önce, OnDeleting olayı yükseltmek için yöntemi çağrılır Deleting . Parametrelerin değerlerini incelemek ve silme işleminden önce ön işleme gerçekleştirmek için bu olayı işleyebilirsiniz.

İşlem tamamlandıktan sonra, OnDeleted olayı yükseltmek için yöntemi çağrılır Deleted . Bu olayı işleyerek dönüş değerlerini ve hata kodlarını inceleyebilir ve işlem sonrası işlemleri gerçekleştirebilirsiniz.

yöntemine Delete programlı erişim için Delete sağlanır. SqlDataSource Denetim bir veriye bağlı denetimle ilişkiliyse, veriye bağlı denetim otomatik olarak Delete yöntemini çağırır.

yöntemi, Delete denetimle ilişkili nesnenin SqlDataSourceView yöntemini temsil ederSqlDataSource.Delete İşlemi gerçekleştirmek için, SqlDataSourceView metni ve ilişkili DeleteParameters değerleri kullanarak DeleteCommand bir DbCommand nesne oluşturur ve ardından temel alınan veritabanına karşı yürütürDbCommand.

Şunlara uygulanır

Ayrıca bkz.