SqlDataSource.UpdateParameters Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Parameterauflistung mit den Parametern ab, die von der UpdateCommand-Eigenschaft des dem SqlDataSourceView-Steuerelement zugeordneten SqlDataSource-Steuerelements verwendet werden.
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
Eigenschaftswert
Eine ParameterCollection, die die von der UpdateCommand-Eigenschaft verwendeten Parameter enthält.
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sie mithilfe eines Steuerelements SqlDataSource Daten in einem DropDownList Steuerelement anzeigen und Daten aktualisieren, wenn auf die Schaltfläche Senden geklickt wird. Wird UpdateCommand mit einer parametrisierten SQL-Anweisung festgelegt, und der UpdateParameters Auflistung werden zwei ControlParameter Parameter hinzugefügt. Wenn auf die Schaltfläche Senden geklickt wird, wird das OnClick Ereignis verarbeitet, um die Update -Methode explizit aufzurufen.
Wichtig
Dieses Beispiel enthält ein Textfeld, das Benutzereingaben akzeptiert, was eine potenzielle Sicherheitsgefahr darstellt, und Werte werden ohne Validierung in Parameter eingefügt, was auch eine potenzielle Sicherheitsgefahr darstellt. Verwenden Sie das Inserting -Ereignis, um Parameterwerte zu überprüfen, bevor Sie die Abfrage ausführen. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.
<%@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>
Hinweise
Wenn die UpdateCommand -Eigenschaft eine parametrisierte SQL-Abfrage enthält, enthält die UpdateParameters Auflistung alle Parameter Objekte, die den Parameterplatzhaltern in der SQL-Zeichenfolge entsprechen.
Parameternamen können von der OldValuesParameterFormatString Eigenschaft beeinflusst werden, insbesondere, wenn der Name einen Primärschlüssel identifiziert, z. B. einen Schlüssel, der mithilfe der DataKeyNames
-Eigenschaft des datengebundenen Steuerelements angegeben wurde, oder in Lösch- und Aktualisierungsszenarien, in denen die ConflictDetection Eigenschaft auf den CompareAllValues Wert festgelegt ist und ein Satz von oldValues
an die entsprechende Datenmethode übergeben wird. In diesem Fall wird die Formatzeichenfolge auf jeden Parameternamen in der oldValues
Auflistung angewendet.
Die Reihenfolge der Parameter in der UpdateParameters Auflistung kann abhängig vom ADO.NET Anbieters wichtig sein. Die System.Data.OleDb Anbieter und System.Data.Odbc ordnen die Parameter in der Auflistung entsprechend der Reihenfolge zu, in der die Parameter in der parametrisierten SQL-Abfrage angezeigt werden. Der System.Data.SqlClient Anbieter, der der Standardanbieter ADO.NET für das SqlDataSource Steuerelement ist, ordnet die Parameter in der Auflistung zu, indem er den Namen des Parameters mit einem Platzhalteralias in der SQL-Abfrage abgleicht. Weitere Informationen zu parametrisierten SQL-Abfragen und -Befehlen finden Sie unter Verwenden von Parametern mit dem SqlDataSource-Steuerelement.
Die UpdateParameters -Eigenschaft ruft die UpdateParameters -Eigenschaft ab, die in dem SqlDataSourceView -Objekt enthalten ist, das dem SqlDataSource Steuerelement zugeordnet ist.
Wichtig
Werte werden ohne Validierung in Parameter eingefügt, was ein potenzielles Sicherheitsrisiko darstellt. Verwenden Sie das Filtering -Ereignis, um Parameterwerte zu überprüfen, bevor Sie die Abfrage ausführen. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.