SqlDataSource.UpdateParameters Propriété

Définition

Obtient la collection de paramètres qui contient les paramètres utilisés par la propriété UpdateCommand du contrôle SqlDataSourceView qui est associé au contrôle SqlDataSource.

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

Valeur de propriété

ParameterCollection qui contient les paramètres utilisés par la propriété UpdateCommand.

Attributs

Exemples

L’exemple de code suivant montre comment utiliser un SqlDataSource contrôle pour afficher des données dans un DropDownList contrôle et mettre à jour des données lorsque vous cliquez sur le bouton Envoyer . est UpdateCommand défini avec une instruction SQL paramétrable et deux ControlParameter paramètres sont ajoutés à la UpdateParameters collection. Lorsque vous cliquez sur le bouton Envoyer , l’événement OnClick est géré pour appeler la Update méthode explicitement.

Important

Cet exemple inclut une zone de texte qui accepte l’entrée de l’utilisateur, qui est une menace de sécurité potentielle, et les valeurs sont insérées dans les paramètres sans validation, ce qui est également une menace de sécurité potentielle. Utilisez l’événement Inserting pour valider les valeurs de paramètre avant d’exécuter la requête. Pour plus d’informations, consultez Vue d’ensemble des attaques de script.

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

Remarques

Si la UpdateCommand propriété contient une requête SQL paramétrée, la UpdateParameters collection contient tous Parameter les objets qui correspondent aux espaces réservés de paramètre dans la chaîne SQL.

Les noms de paramètres peuvent être affectés par la OldValuesParameterFormatString propriété, en particulier si le nom identifie une clé primaire, telle qu’une clé spécifiée à l’aide de la DataKeyNames propriété du contrôle lié aux données, ou dans des scénarios de suppression et de mise à jour où la ConflictDetection propriété est définie sur la CompareAllValues valeur et un ensemble de sont transmis à la méthode de oldValues données correspondante. Dans ce cas, la chaîne de format est appliquée à chaque nom de paramètre de la oldValues collection.

L’ordre des paramètres de la UpdateParameters collection peut être important, en fonction du fournisseur ADO.NET. Les System.Data.OleDb fournisseurs et System.Data.Odbc associent les paramètres de la collection en fonction de l’ordre dans lequel les paramètres apparaissent dans la requête SQL paramétrée. Le System.Data.SqlClient fournisseur, qui est le fournisseur ADO.NET par défaut pour le SqlDataSource contrôle, associe les paramètres de la collection en faisant correspondre le nom du paramètre à un alias d’espace réservé dans la requête SQL. Pour plus d’informations sur les requêtes et commandes SQL paramétrables, consultez Utilisation de paramètres avec le contrôle SqlDataSource.

La UpdateParameters propriété récupère la UpdateParameters propriété contenue dans l’objet SqlDataSourceView associé au SqlDataSource contrôle.

Important

Les valeurs sont insérées dans des paramètres sans validation, ce qui constitue une menace potentielle pour la sécurité. Utilisez l’événement Filtering pour valider les valeurs de paramètre avant d’exécuter la requête. Pour plus d’informations, consultez Vue d’ensemble des attaques de script.

S’applique à

Voir aussi