SqlDataSource.Delete Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.