Partage via


SqlDataSource.Delete Méthode

Définition

Effectue une opération de suppression à l’aide de la DeleteCommand chaîne SQL et de tous les paramètres qui se trouvent dans la DeleteParameters collection.

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

Retours

Valeur qui représente le nombre de lignes supprimées de la base de données sous-jacente.

Exceptions

Impossible SqlDataSource d’établir une connexion avec la source de données sous-jacente.

Exemples

L’exemple de code suivant montre comment définir le DeleteCommand texte pour supprimer une commande de la base de données Northwind. Initialement, les données sont récupérées à partir de la table Orders et affichées dans un DropDownList contrôle. Vous devez déclarer explicitement la propriété et appeler la DeleteParameters méthode lors de l’utilisation Delete de contrôles liés aux données, tels que DropDownList (contrairement à d’autres contrôles, tels que GridView et DetailsView, qui remplissent automatiquement les paramètres et appellent la Delete méthode sur un contrôle de source de données). Dans cet exemple, l’événement OnClick est délégué au gestionnaire d’événements privé OnDelete , qui appelle explicitement la Delete méthode du SqlDataSource contrôle.

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

Remarques

Avant l’exécution de l’opération de suppression, la OnDeleting méthode est appelée pour déclencher l’événement Deleting . Vous pouvez gérer cet événement pour examiner les valeurs des paramètres et effectuer tout prétraitement avant une opération de suppression.

Une fois l’opération terminée, la OnDeleted méthode est appelée pour déclencher l’événement Deleted . Vous pouvez gérer cet événement pour examiner les valeurs de retour et les codes d’erreur et effectuer tout post-traitement.

La Delete méthode est fournie pour l’accès par programmation à la Delete méthode. Si le SqlDataSource contrôle est associé à un contrôle lié aux données, le contrôle lié aux données appelle automatiquement la méthode Delete .

La Delete méthode délègue à la Delete méthode de l’objet SqlDataSourceView associé au SqlDataSource contrôle. Pour effectuer l’opération, le fichier SqlDataSourceView génère un DbCommand objet à l’aide du DeleteCommand texte et de toutes les valeurs associées DeleteParameters , puis exécute la DbCommand base de données sous-jacente.

S’applique à

Voir aussi