SqlDataSourceView.Update(IDictionary, IDictionary, IDictionary) Metoda

Definicja

Wykonuje operację aktualizacji przy użyciu UpdateCommand ciągu SQL, wszystkich parametrów w UpdateParameters kolekcji oraz wartości, które znajdują się w określonych keyskolekcjach , valuesi 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

Klucz IDictionary podstawowy używany z właściwością UpdateCommand do wykonania operacji aktualizacji bazy danych. Jeśli nie ma żadnych kluczy skojarzonych z zapytaniem lub jeśli UpdateCommand nie jest sparametryzowanym zapytaniem SQL, przekaż polecenie null.

values
IDictionary

Wartości IDictionary do użycia z właściwością UpdateCommand do wykonania operacji aktualizacji bazy danych. Jeśli nie ma parametrów skojarzonych z zapytaniem lub jeśli UpdateCommand nie jest sparametryzowanym zapytaniem SQL, przekaż polecenie null.

oldValues
IDictionary

Element IDictionary reprezentujący oryginalne wartości w bazie danych. Jeśli nie ma parametrów skojarzonych z zapytaniem lub jeśli UpdateCommand nie jest sparametryzowanym zapytaniem SQL, przekaż polecenie null.

Zwraca

Wartość reprezentująca liczbę wierszy zaktualizowanych w bazowej bazie danych.

Wyjątki

Nie SqlDataSource można nawiązać połączenia z bazowym źródłem danych.

Właściwość CanUpdate to false.

Przykłady

W poniższym przykładzie kodu pokazano, jak używać SqlDataSource kontrolki do wyświetlania danych w kontrolce DropDownList i aktualizowania danych po kliknięciu przycisku Prześlij . Właściwość UpdateCommand jest ustawiana przy użyciu sparametryzowanej instrukcji SQL, a do kolekcji UpdateParameters są dodawane dwa ControlParameter parametry. Po kliknięciu OnClick przycisku Prześlij zdarzenie jest obsługiwane w celu jawnego Update wywołania metody.

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

Uwagi

Metoda Update wywołuje metodę ExecuteUpdate , przekazując keysparametry , valuesi oldValues . Aby uzyskać więcej informacji, zobacz SqlDataSource.UpdateCommand.

Dotyczy

Zobacz też