从ASP.NET删除和更新查询

时间:2016-02-05 11:20:23

标签: asp.net sql-server

我正在使用ASP.NET和SQL Server数据库创建一个Web应用程序。错误是我无法删除或更新。我相信应用程序不会返回所选列的id。我的代码是:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TestClientesConnectionString %>"            
  SelectCommand="SELECT * FROM [Clientes]"             
  UpdateCommand="UPDATE [Clientes] SET [nombre]=@nombre, [apellidos]=@apellidos, [telefono]=@telefono, [fechaNacimiento]=@fechaNacimiento WHERE [ID]=@original_ID"
  DeleteCommand="DELETE FROM [Clientes] WHERE [ID]=@original_ID"
  InsertCommand="INSERT INTO [Clientes] VALUES (@nombre, @apellidos, @telefono, @fechaNacimiento)">
  <DeleteParameters>
    <asp:Parameter Name="original_ID" Type="Int32" />
  </DeleteParameters>
  <UpdateParameters>
    <asp:Parameter Name="original_ID" Type="Int32" />
  </UpdateParameters>
</asp:SqlDataSource>

<asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" AutoGenerateRows="False" DataSourceID="SqlDataSource1" DataKeyNames="ID" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" AutoGenerateInsertButton="True">
  <Fields>
    <asp:BoundField DataField="ID" HeaderText="Id" SortExpression="ID" ReadOnly="true" Visible="false" />
    <asp:BoundField DataField="nombre" HeaderText="Nombre" SortExpression="nombre" />
    <asp:BoundField DataField="apellidos" HeaderText="Apellidos" SortExpression="apellidos" />
    <asp:BoundField DataField="telefono" HeaderText="Telefono" SortExpression="telefono" />
    <asp:BoundField DataField="fechaNacimiento" HeaderText="Fecha Nacimiento" SortExpression="fechaNacimiento" DataFormatString="{0:dd/MM/yyyy}" />
  </Fields>
</asp:DetailsView>

我使用了不同的方法,但我无法解决错误。我该如何解决?

感谢。

1 个答案:

答案 0 :(得分:0)

问题出在您的参数名称original_ID上,如果您使用ID它应该有效。您没有更改ID,因此无需使用original_id