SqlDataSourceView.Update(IDictionary, IDictionary, IDictionary) Метод

Определение

Выполняет операцию обновления, используя SQL-строку UpdateCommand, все параметры, имеющиеся в коллекции UpdateParameters, и значения, содержащиеся в заданных коллекциях keys, values и oldValues.

public int Update (System.Collections.IDictionary keys, System.Collections.IDictionary values, System.Collections.IDictionary oldValues);

Параметры

keys
IDictionary

Объект IDictionary первичных ключей, используемых вместе со свойством UpdateCommand для выполнения операции обновления базы данных. Если с запросом не связан ни один ключ или если свойство UpdateCommand не является параметризованным SQL-запросом, передает значение null.

values
IDictionary

Объект IDictionary значений, используемых вместе со свойством UpdateCommand для выполнения операции обновления базы данных. Если с запросом не связан ни один параметр или если свойство UpdateCommand не является параметризованным SQL-запросом, передает значение null.

oldValues
IDictionary

Объект IDictionary, предоставляющий исходные значения в базе данных. Если с запросом не связан ни один параметр или если свойство UpdateCommand не является параметризованным SQL-запросом, передает значение null.

Возвращаемое значение

Значение, представляющее число строк, обновленных в основной базе данных.

Исключения

Объекту SqlDataSource не удается установить подключение к базовому источнику данных.

Значение свойства CanUpdatefalse.

Примеры

В следующем примере кода показано, как использовать SqlDataSource элемент управления для отображения данных в элементе DropDownList управления и обновления данных при нажатии кнопки Отправить . Свойство UpdateCommand задается с помощью параметризованной инструкции SQL, и в коллекцию UpdateParameters добавляются два ControlParameter параметра. При нажатии OnClick кнопки Отправить событие обрабатывается для явного 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>

Комментарии

Метод Update вызывает ExecuteUpdate метод , передавая keysпараметры , valuesи oldValues . Для получения дополнительной информации см. SqlDataSource.UpdateCommand.

Применяется к

Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

См. также раздел