SqlDataSourceView.Update(IDictionary, IDictionary, IDictionary) 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 aktualizace pomocí UpdateCommand řetězce SQL, všech parametrů, které jsou v UpdateParameters kolekci, a hodnot, které jsou v zadaných keys
kolekcích , values
a oldValues
.
public:
int Update(System::Collections::IDictionary ^ keys, System::Collections::IDictionary ^ values, System::Collections::IDictionary ^ oldValues);
public int Update (System.Collections.IDictionary keys, System.Collections.IDictionary values, System.Collections.IDictionary oldValues);
override this.Update : System.Collections.IDictionary * System.Collections.IDictionary * System.Collections.IDictionary -> int
Public Function Update (keys As IDictionary, values As IDictionary, oldValues As IDictionary) As Integer
Parametry
- keys
- IDictionary
Primární IDictionary klíče, které se mají použít s UpdateCommand vlastností k provedení operace aktualizace databáze. Pokud k dotazu nejsou přidružené žádné klíče nebo pokud UpdateCommand parametr není parametrizovaný dotaz SQL, předejte null
.
- values
- IDictionary
Hodnota IDictionary hodnoty, která se má použít s UpdateCommand vlastností k provedení operace aktualizace databáze. Pokud k dotazu nejsou přidružené žádné parametry nebo pokud UpdateCommand parametr není parametrizovaný dotaz SQL, předejte null
.
- oldValues
- IDictionary
Představuje IDictionary původní hodnoty v databázi. Pokud k dotazu nejsou přidružené žádné parametry nebo pokud UpdateCommand parametr není parametrizovaný dotaz SQL, předejte null
.
Návraty
Hodnota, která představuje počet řádků aktualizovaných v podkladové databázi.
Výjimky
Objekt SqlDataSource nemůže navázat připojení k podkladovému zdroji dat.
Vlastnost CanUpdate je false
.
Příklady
Následující příklad kódu ukazuje, jak použít SqlDataSource ovládací prvek k zobrazení dat v ovládacím DropDownList prvku a aktualizaci dat při kliknutí na tlačítko Odeslat . Vlastnost UpdateCommand je nastavená parametrizovaným příkazem SQL a do UpdateParameters kolekce se přidají dva ControlParameter parametry. Po kliknutí na tlačítko Odeslat se událost zpracuje tak, OnClick aby explicitně volala metodu Update .
<%@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 On_Click(Object source, EventArgs e) {
try {
SqlDataSource1.Update();
}
catch (Exception except) {
// Handle the Exception.
}
Label2.Text="The record was updated successfully!";
}
</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 EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</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_Click(ByVal source As Object, ByVal e As EventArgs)
Try
SqlDataSource1.Update()
Catch except As Exception
' Handle the Exception.
End Try
Label2.Text="The record was updated successfully!"
End Sub 'On_Click
</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 EmployeeID, LastName, Address FROM Employees"
UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
<UpdateParameters>
<asp:ControlParameter Name="Address" ControlId="TextBox1" PropertyName="Text"/>
<asp:ControlParameter Name="EmployeeID" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:DropDownList
id="DropDownList1"
runat="server"
DataTextField="LastName"
DataValueField="EmployeeID"
DataSourceID="SqlDataSource1">
</asp:DropDownList>
<br />
<asp:Label id="Label1" runat="server" Text="Enter a new address for the selected user."
AssociatedControlID="TextBox1" />
<asp:TextBox id="TextBox1" runat="server" />
<asp:Button id="Submit" runat="server" Text="Submit" OnClick="On_Click" />
<br /><asp:Label id="Label2" runat="server" Text="" />
</form>
</body>
</html>
Poznámky
Metoda Update volá metodu a ExecuteUpdate předává keys
parametry , values
a oldValues
. Další informace naleznete v tématu SqlDataSource.UpdateCommand.