SqlDataSource.Delete Methode

Definitie

Hiermee voert u een verwijderbewerking uit met behulp van de DeleteCommand SQL-tekenreeks en eventuele parameters in de DeleteParameters verzameling.

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

Retouren

Een waarde die het aantal rijen aangeeft dat uit de onderliggende database is verwijderd.

Uitzonderingen

Er SqlDataSource kan geen verbinding worden tot stand gebracht met de onderliggende gegevensbron.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de DeleteCommand tekst instelt om een order uit de Northwind-database te verwijderen. In eerste instantie worden gegevens opgehaald uit de tabel Orders en weergegeven in een DropDownList besturingselement. U moet de DeleteParameters eigenschap expliciet declareren en de Delete methode aanroepen wanneer u gegevensgebonden besturingselementen gebruikt, zoals de DropDownList (in tegenstelling tot andere besturingselementen, zoals GridView en DetailsView, waarmee de parameters automatisch worden ingevuld en de Delete methode wordt aangeroepen voor een besturingselement voor gegevensbronnen). In dit voorbeeld wordt de OnClick gebeurtenis gedelegeerd aan de privégebeurtenis-handler OnDelete , die expliciet de Delete methode van het SqlDataSource besturingselement aanroept.

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

Opmerkingen

Voordat de verwijderbewerking wordt uitgevoerd, wordt de OnDeleting methode aangeroepen om de Deleting gebeurtenis te genereren. U kunt deze gebeurtenis afhandelen om de waarden van de parameters te onderzoeken en eventuele voorverwerkingen uit te voeren vóór een verwijderbewerking.

Nadat de bewerking is voltooid, wordt de OnDeleted methode aangeroepen om de Deleted gebeurtenis te genereren. U kunt deze gebeurtenis afhandelen om alle retourwaarden en foutcodes te onderzoeken en eventuele naverwerking uit te voeren.

De Delete methode wordt verstrekt voor programmatische toegang tot de Delete methode. Als het SqlDataSource besturingselement is gekoppeld aan een gegevensgebonden besturingselement, roept het besturingselement voor gegevens automatisch de methode Delete aan.

De Delete methode delegeert de methode aan de Delete methode van het SqlDataSourceView object dat is gekoppeld aan het SqlDataSource besturingselement. Als u de bewerking wilt uitvoeren, bouwt u SqlDataSourceView een DbCommand object met behulp van de DeleteCommand tekst en eventuele bijbehorende DeleteParameters waarden en voert u vervolgens de DbCommand waarde uit op basis van de onderliggende database.

Van toepassing op

Zie ook