SqlDataSource.UpdateParameters Egenskap

Definition

Hämtar den parametersamling som innehåller de parametrar som används av UpdateCommand egenskapen från kontrollen SqlDataSourceView som är associerad med SqlDataSource kontrollen.

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

Egenskapsvärde

En ParameterCollection som innehåller de parametrar som används av egenskapen UpdateCommand .

Attribut

Exempel

Följande kodexempel visar hur du använder en SqlDataSource kontroll för att visa data i en DropDownList kontroll och uppdatera data när knappen Skicka klickas. UpdateCommand Anges med en parameteriserad SQL-instruktion och två ControlParameter parametrar läggs till i UpdateParameters samlingen. När knappen Skicka klickas OnClick hanteras händelsen för att anropa Update metoden explicit.

Important

Det här exemplet innehåller en textruta som accepterar användarindata, vilket är ett potentiellt säkerhetshot, och värden infogas i parametrar utan validering, vilket också är ett potentiellt säkerhetshot. Inserting Använd händelsen för att verifiera parametervärden innan du kör frågan. Mer information finns i Översikt över skriptexploateringar.

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

Kommentarer

Om egenskapen UpdateCommand innehåller en parameteriserad SQL-fråga UpdateParameters innehåller samlingen alla Parameter objekt som motsvarar parameterplatshållarna i SQL-strängen.

Parameternamn kan påverkas av OldValuesParameterFormatString egenskapen, särskilt om namnet identifierar en primärnyckel, till exempel en nyckel som anges med DataKeyNames hjälp av egenskapen för den databundna kontrollen, eller i borttagnings- och uppdateringsscenarier där ConflictDetection egenskapen är inställd på CompareAllValues värdet och en uppsättning oldValues skickas till motsvarande datametod. I det här fallet tillämpas formatsträngen på varje parameternamn i oldValues samlingen.

Ordningen på parametrarna i samlingen UpdateParameters kan vara viktig, beroende på ADO.NET-providern. Leverantörerna System.Data.OleDb och System.Data.Odbc associerar parametrarna i samlingen enligt den ordning som parametrarna visas i den parametriserade SQL-frågan. Providern System.Data.SqlClient, som är standardprovidern ADO.NET för kontrollen SqlDataSource, associerar parametrarna i samlingen genom att matcha namnet på parametern med ett platshållaralias i SQL-frågan. Mer information om parameteriserade SQL-frågor och -kommandon finns i Använda parametrar med SqlDataSource-kontrollen.

Egenskapen UpdateParameters hämtar egenskapen UpdateParameters som finns i objektet SqlDataSourceView som är associerat med SqlDataSource kontrollen.

Important

Värden infogas i parametrar utan validering, vilket är ett potentiellt säkerhetshot. Filtering Använd händelsen för att verifiera parametervärden innan du kör frågan. Mer information finns i Översikt över skriptexploateringar.

Gäller för

Se även