SqlDataSource.Delete Méthode

Définition

Exécute une opération de suppression à l'aide de la chaîne SQL DeleteCommand et de tous les paramètres de la collection DeleteParameters.

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

Retours

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

Exceptions

SqlDataSource ne peut pas établir de 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 DeleteParameters propriété et appeler la 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 que l’opération de suppression ne soit effectuée, 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 un 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 un 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 SqlDataSourceView génère un DbCommand objet à l’aide du DeleteCommand texte et des valeurs associées DeleteParameters , puis exécute le DbCommand sur la base de données sous-jacente.

S’applique à

Voir aussi