SqlDataSource.Delete Metoda

Definice

Provede operaci odstranění pomocí DeleteCommand řetězce SQL a všech parametrů, které jsou v kolekci DeleteParameters .

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

Návraty

Hodnota, která představuje počet řádků odstraněných z podkladové databáze.

Výjimky

Objekt SqlDataSource nemůže navázat připojení k podkladovému zdroji dat.

Příklady

Následující příklad kódu ukazuje, jak nastavit DeleteCommand text k odstranění objednávky z databáze Northwind. Zpočátku se data načtou z tabulky Orders a zobrazí se v ovládacím DropDownList prvku. Musíte explicitně deklarovat DeleteParameters vlastnost a volat metodu Delete při použití ovládacích prvků vázaných na data, jako DropDownList je například (na rozdíl od jiných ovládacích prvků, jako GridView jsou a DetailsView, které automaticky naplní parametry a volají metodu Delete v ovládacím prvku zdroje dat). V tomto příkladu OnClick je událost delegovaná na privátní OnDelete obslužnou rutinu Delete události, která explicitně volá metodu SqlDataSource ovládacího prvku.

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

Poznámky

Před provedením OnDeleting operace odstranění je volána metoda pro vyvolání Deleting události. Tuto událost můžete zpracovat, abyste prozkoumali hodnoty parametrů a provedli jakékoli předběžné zpracování před operací odstranění.

Po dokončení OnDeleted operace je volána metoda pro vyvolání Deleted události. Tuto událost můžete zpracovat, abyste prozkoumali všechny návratové hodnoty a kódy chyb a provedli jakékoli následné zpracování.

Metoda Delete je k dispozici pro programový přístup k Delete metodě. SqlDataSource Pokud je ovládací prvek přidružen k ovládacímu prvku vázanému na data, ovládací prvek vázané na data automaticky volá metodu Delete.

Metoda Delete deleguje metodu Delete objektu SqlDataSourceView , který je přidružen k ovládacímu prvku SqlDataSource . K provedení operace SqlDataSourceView sestaví DbCommand objekt pomocí DeleteCommand textu a všech přidružených DeleteParameters hodnot a pak provede DbCommand objekt proti podkladové databázi.

Platí pro

Viz také