SqlDataSource.UpdateParameters Propiedad

Definición

Obtiene la colección de parámetros que contiene los parámetros utilizados por la propiedad UpdateCommand desde el objeto SqlDataSourceView asociado con el control SqlDataSource.Gets the parameters collection that contains the parameters that are used by the UpdateCommand property from the SqlDataSourceView control that is associated with the SqlDataSource control.

public:
 property System::Web::UI::WebControls::ParameterCollection ^ UpdateParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection UpdateParameters { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.UpdateParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property UpdateParameters As ParameterCollection

Valor de propiedad

ParameterCollection

ParameterCollection que contiene los parámetros utilizados por la propiedad UpdateCommand.A ParameterCollection that contains the parameters used by the UpdateCommand property.

Atributos

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un SqlDataSource control para Mostrar datos en un DropDownList control y actualizar datos cuando se hace clic en el botón Enviar .The following code example demonstrates how to use a SqlDataSource control to display data in a DropDownList control and update data when the Submit button is clicked. UpdateCommandSe establece con una instrucción SQL con parámetros y ControlParameter se agregan dos parámetros a la UpdateParameters colección.The UpdateCommand is set with a parameterized SQL statement and two ControlParameter parameters are added to the UpdateParameters collection. Cuando se hace clic en el botón Enviar , el OnClick evento se controla para llamar Update explícitamente al método.When the Submit button is clicked, the OnClick event is handled to call the Update method explicitly.

Importante

En este ejemplo se incluye un cuadro de texto que acepta datos proporcionados por el usuario, que es una posible amenaza de seguridad, y los valores se insertan en parámetros sin validación, lo que también es una posible amenaza de seguridad.This example includes a text box that accepts user input, which is a potential security threat, and values are inserted into parameters without validation, which is also a potential security threat. Utilice el Inserting evento para validar los valores de los parámetros antes de ejecutar la consulta.Use the Inserting event to validate parameter values before executing the query. Para más información, consulte Información general sobre los ataques mediante scripts.For more information, see Script Exploits Overview.

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

Comentarios

Si la UpdateCommand propiedad contiene una consulta SQL con parámetros, la UpdateParameters colección contiene cualquier Parameter objeto que se corresponda con los marcadores de posición de los parámetros de la cadena SQL.If the UpdateCommand property contains a parameterized SQL query, the UpdateParameters collection contains any Parameter objects that correspond to the parameter placeholders in the SQL string.

Los nombres de parámetro pueden verse afectados por la OldValuesParameterFormatString propiedad, específicamente si el nombre identifica una clave principal, como una clave especificada mediante la DataKeyNames propiedad del control enlazado a datos, o en escenarios de eliminación y actualización en los que la ConflictDetection propiedad se establece en el CompareAllValues valor y un conjunto de oldValues se pasan al método de datos correspondiente.Parameter names might be affected by the OldValuesParameterFormatString property, specifically if the name identifies a primary key, such as a key specified using the DataKeyNames property of the data-bound control, or in delete and update scenarios where the ConflictDetection property is set to the CompareAllValues value and a set of oldValues are passed to the corresponding data method. En este caso, la cadena de formato se aplica a cada nombre de parámetro de la oldValues colección.In this case, the format string is applied to each parameter name in the oldValues collection.

El orden de los parámetros en la UpdateParameters colección puede ser importante, dependiendo del proveedor de ADO.net.The order of the parameters in the UpdateParameters collection might be important, depending on the ADO.NET provider. Los System.Data.OleDb System.Data.Odbc proveedores y asocian los parámetros de la colección según el orden en que aparecen los parámetros en la consulta SQL con parámetros.The System.Data.OleDb and System.Data.Odbc providers associate the parameters in the collection according to the order that the parameters appear in the parameterized SQL query. El System.Data.SqlClient proveedor, que es el proveedor ADO.net predeterminado para el SqlDataSource control, asocia los parámetros de la colección haciendo coincidir el nombre del parámetro con un alias de marcador de posición en la consulta SQL.The System.Data.SqlClient provider, which is the default ADO.NET provider for the SqlDataSource control, associates the parameters in the collection by matching the name of the parameter with a placeholder alias in the SQL query. Para obtener más información sobre los comandos y las consultas SQL con parámetros, vea usar parámetros con el control SqlDataSource.For more information about parameterized SQL queries and commands, see Using Parameters with the SqlDataSource Control.

La UpdateParameters propiedad recupera la UpdateParameters propiedad incluida en el SqlDataSourceView objeto que está asociado al SqlDataSource control.The UpdateParameters property retrieves the UpdateParameters property that is contained by the SqlDataSourceView object that is associated with the SqlDataSource control.

Importante

Los valores se insertan en parámetros sin validación, lo que es una posible amenaza de seguridad.Values are inserted into parameters without validation, which is a potential security threat. Utilice el Filtering evento para validar los valores de los parámetros antes de ejecutar la consulta.Use the Filtering event to validate parameter values before executing the query. Para más información, consulte Información general sobre los ataques mediante scripts.For more information, see Script Exploits Overview.

Se aplica a

Consulte también