SqlDataSource.Delete Método

Definição

Realiza uma operação de eliminação usando a DeleteCommand string SQL e quaisquer parâmetros que estejam na DeleteParameters coleção.

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

Devoluções

Um valor que representa o número de linhas eliminadas da base de dados subjacente.

Exceções

Não conseguem SqlDataSource estabelecer uma ligação com a fonte de dados subjacente.

Exemplos

O exemplo de código seguinte demonstra como definir o DeleteCommand texto para eliminar uma ordem da base de dados da Northwind. Inicialmente, os dados são recolhidos da tabela de Ordens e exibidos num DropDownList controlo. Deve declarar explicitamente a DeleteParameters propriedade e chamar o Delete método ao usar controlos data-bound, como o DropDownList (ao contrário de outros controlos, como GridView e DetailsView, que preenchem automaticamente os parâmetros e chamam o Delete método num controlo de fonte de dados). Neste exemplo, o OnClick evento é delegado ao gestor privado OnDelete de eventos, que chama explicitamente o Delete método do SqlDataSource controlo.

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

Observações

Antes de a operação de eliminação ser executada, o OnDeleting método é chamado para levantar o Deleting evento. Pode gerir este evento para examinar os valores dos parâmetros e realizar qualquer pré-processamento antes de uma operação de eliminação.

Após a conclusão da operação, o OnDeleted método é chamado para elevar o Deleted evento. Pode gerir este evento para examinar quaisquer valores de retorno e códigos de erro e realizar qualquer pós-processamento.

O Delete método é fornecido para acesso programático ao método Delete . Se o SqlDataSource controlo estiver associado a um controlo ligado a dados, o controlo ligado a dados chama automaticamente o método Delete .

O Delete método delega ao Delete método do SqlDataSourceView objeto associado ao SqlDataSource controlo. Para realizar a operação, constrói SqlDataSourceView um DbCommand objeto usando o DeleteCommand texto e quaisquer valores associados DeleteParameters , e depois executa-o DbCommand contra a base de dados subjacente.

Aplica-se a

Ver também