1

我在 asp.net 中使用 Formview。我知道需要指定 UpdateCommand 以便 Formview 知道要运行什么 SQL 查询。

除了Formview 设置的代码之外,我是否需要编写一个事件才能正确触发 SQL 查询?

另外,我没有收到 SQL 错误或任何东西,只是没有绑定回数据库。

<EditItemTemplate>
        ProductID:
        <asp:Label ID="ProductIDLabel1" runat="server" 
            Text='<%# Eval("ProductID") %>' />
        <br />
        ProductName:
        <asp:TextBox ID="ProductNameTextBox" runat="server" 
            Text='<%# Bind("ProductName") %>' />
        <br />
        UnitPrice:
        <asp:TextBox ID="UnitPriceTextBox" runat="server" 
            Text='<%# Bind("UnitPrice") %>' />
        <br />
        <asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True" 
            CommandName="Update" Text="Update" />
        &nbsp;<asp:LinkButton ID="UpdateCancelButton" runat="server" 
            CausesValidation="False" CommandName="Cancel" Text="Cancel" />
    </EditItemTemplate>
4

2 回答 2

0

确保设置 DataKeys 属性(通常设置为主键的列)。如果您需要更多帮助,您需要发布您的代码。

于 2009-07-30T21:05:24.183 回答
0

我遇到了类似的问题,然后我研究了 MSDN,它说将 UpdateCommand 与 SqlDataSource 一起使用,并且有效。
这是我的代码:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:conString %>"
      SelectCommand="SELECT DISTINCT * FROM [employees] WHERE ([username] = @username)"
      UpdateCommand="UPDATE [employees] SET first_name = @first_name WHERE username = @username">

于 2014-09-13T00:47:44.263 回答