SqlDataSource.UpdateParameters Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Özelliği tarafından UpdateCommand kullanılan parametreleri içeren parametre koleksiyonunu, denetimle SqlDataSource ilişkili denetimden SqlDataSourceView alır.
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
Özellik Değeri
ParameterCollection özelliği tarafından UpdateCommand kullanılan parametreleri içeren.
- Öznitelikler
Örnekler
Aşağıdaki kod örneği, bir SqlDataSource denetimdeki DropDownList verileri görüntülemek ve Gönder düğmesine tıklandığında verileri güncelleştirmek için denetimin nasıl kullanılacağını gösterir. UpdateCommand parametresi bir parametreli SQL deyimiyle ayarlanır ve koleksiyona UpdateParameters iki ControlParameter parametre eklenir. Gönder düğmesine tıklandığında, OnClick yöntemi açıkça çağırmak Update için olay işlenir.
Önemli
Bu örnek, olası bir güvenlik tehdidi olan kullanıcı girişini kabul eden bir metin kutusu içerir ve parametrelere doğrulama olmadan değerler eklenir ve bu da olası bir güvenlik tehdididir. Sorguyu Inserting yürütmeden önce parametre değerlerini doğrulamak için olayını kullanın. Daha fazla bilgi için bkz. Betik Açıklarına Genel Bakış.
<%@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>
Açıklamalar
UpdateCommand özelliği parametreli bir SQL sorgusu içeriyorsa, UpdateParameters koleksiyon SQL dizesindeki parametre yer tutucularına karşılık gelen nesneleri Parameter içerir.
Parametre adları özelliğinden OldValuesParameterFormatString etkilenebilir; özellikle ad, veriye bağlı denetimin özelliği kullanılarak DataKeyNames
belirtilen anahtar gibi bir birincil anahtar tanımlarsa veya özelliğin değerine ayarlandığı CompareAllValues ve bir kümesinin oldValues
ilgili veri yöntemine geçirildiği ConflictDetection silme ve güncelleştirme senaryolarında. Bu durumda, biçim dizesi koleksiyondaki oldValues
her parametre adına uygulanır.
ADO.NET sağlayıcısına bağlı olarak koleksiyondaki UpdateParameters parametrelerin sırası önemli olabilir. System.Data.OleDb ve System.Data.Odbc sağlayıcıları, koleksiyondaki parametreleri parametrelerin parametreleştirilmiş SQL sorgusunda görünme sırasına göre ilişkilendirir. Denetimin System.Data.SqlClient varsayılan ADO.NET sağlayıcısı olan sağlayıcı SqlDataSource , parametrenin adını SQL sorgusundaki yer tutucu diğer adıyla eşleştirerek koleksiyondaki parametreleri ilişkilendirir. Parametreli SQL sorguları ve komutları hakkında daha fazla bilgi için bkz. SqlDataSource Denetimi ile Parametreleri Kullanma.
özelliği, UpdateParameters denetimle SqlDataSource ilişkilendirilmiş nesnenin SqlDataSourceView içerdiği özelliği alırUpdateParameters.
Önemli
Değerler doğrulama olmadan parametrelere eklenir ve bu da olası bir güvenlik tehdididir. Sorguyu Filtering yürütmeden önce parametre değerlerini doğrulamak için olayını kullanın. Daha fazla bilgi için bkz. Betik Açıklarına Genel Bakış.