Share via


SqlDataSource.UpdateParameters Vlastnost

Definice

Získá kolekci parametrů, která obsahuje parametry, které jsou používány UpdateCommand vlastnost z SqlDataSourceView ovládacího prvku, který je přidružen k ovládacímu SqlDataSource prvku.

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

Hodnota vlastnosti

A ParameterCollection , který obsahuje parametry používané UpdateCommand vlastností.

Atributy

Příklady

Následující příklad kódu ukazuje, jak pomocí SqlDataSource ovládacího prvku zobrazit data v ovládacím DropDownList prvku a aktualizovat data po kliknutí na tlačítko Odeslat . Parametr UpdateCommand se nastaví pomocí parametrizovaného příkazu 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 .

Důležité

Tento příklad zahrnuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba, a hodnoty jsou vloženy do parametrů bez ověření, což je také potenciální bezpečnostní hrozba. Událost použijte Inserting k ověření hodnot parametrů před spuštěním dotazu. Další informace najdete v tématu Přehled zneužití skriptů.

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

UpdateCommand Pokud vlastnost obsahuje parametrizovaný dotaz SQL, UpdateParameters kolekce obsahuje všechny Parameter objekty, které odpovídají zástupným symbolům parametrů v řetězci SQL.

Názvy parametrů můžou být ovlivněny OldValuesParameterFormatString vlastností, konkrétně pokud název identifikuje primární klíč, například klíč zadaný pomocí DataKeyNames vlastnosti ovládacího prvku vázaného na data, nebo ve scénářích odstranění a aktualizace, kdy ConflictDetection je vlastnost nastavena na CompareAllValues hodnotu a sada je oldValues předána odpovídající datové metodě. V tomto případě se formátovací řetězec použije na každý název parametru v kolekci oldValues .

Pořadí parametrů v kolekci UpdateParameters může být důležité v závislosti na poskytovateli ADO.NET. Zprostředkovatelé System.Data.OleDb a System.Data.Odbc přidružují parametry v kolekci podle pořadí, ve které se parametry zobrazují v parametrizovaném dotazu SQL. Zprostředkovatel System.Data.SqlClient , který je výchozím zprostředkovatelem SqlDataSource ADO.NET ovládacího prvku, přidruží parametry v kolekci tak, že v dotazu SQL přiřadí název parametru se zástupným aliasem. Další informace o parametrizovaných dotazech a příkazech SQL najdete v tématu Použití parametrů s ovládacím prvku SqlDataSource.

Vlastnost UpdateParameters načte UpdateParameters vlastnost, která je obsažena objektem SqlDataSourceView , který je přidružen k ovládacímu SqlDataSource prvku.

Důležité

Hodnoty se do parametrů vkládají bez ověření, což představuje potenciální bezpečnostní hrozbu. Událost použijte Filtering k ověření hodnot parametrů před spuštěním dotazu. Další informace najdete v tématu Přehled zneužití skriptů.

Platí pro

Viz také