使用Objectdatasource和gridview删除行

时间:2011-02-03 15:35:09

标签: gridview objectdatasource business-objects

我正在使用带有objectdatasource的Gridview,我为objectdatasource选择了select和delete方法,但我不知道如何为objectdatasource设置delete参数(id)。 这是我的代码:

<apc:GridView ID="GridView1" runat="server" ApproveText="APPROVE" AutoGenerateColumns="False" CancelText="Canecl" CheckAllText="CHECK All" DataSourceID="ObjectDataSource1" DeleteAllText="Delete Selected Rows" DeleteButtonImageUrl="css/layout/site/tables/action4.gif" DeleteText="Delete" EditText="Edit" NewText="ADD NEW" SelectButtonImageUrl="css/layout/site/tables/action1.gif" SelectText="Select" ShowCheckBox="True" ShowDeleteAllButton="True" ShowDeleteButton="True" ShowEditButton="True" ShowNewButton="False" ShowSelectButton="True" Title="Table Template" UnCheckAllText="UNCHECK All" UpdateText="Update" DataKeyNames="Id" >
<Columns>
    <asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
    <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
    <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" SortExpression="CompanyName" />
    <asp:BoundField DataField="PhoneNumber" HeaderText="PhoneNumber" SortExpression="PhoneNumber" />
    <asp:BoundField DataField="MobileNumber" HeaderText="MobileNumber" SortExpression="MobileNumber" />
    <asp:BoundField DataField="CompanyPhone" HeaderText="CompanyPhone" SortExpression="CompanyPhone" />
    <asp:BoundField DataField="Id" HeaderText="Id" SortExpression="Id" />
</Columns>

                                              

我得到ObjectDataSource'ObjectDataSource1'找不到具有参数的非泛型方法'Delete':id,original_Id。 请帮我。 罐。

2 个答案:

答案 0 :(得分:0)

在XML中,在ObjectDataSource1下,将值original_ {0}更改为{0}

OR

在删除功能XML代码

下将其更改为您的ID名称

实施例

OldValuesParameterFormatString = original_ {0}更改为OldValuesParameterFormatString =“myID”

此外,

  <DeleteParameters>
            <asp:Parameter Name="myID" Type="Int32" />
  </DeleteParameters>

由于

答案 1 :(得分:0)

您似乎需要修改删除方法以接受Id参数。我有一个类似的问题,我没有设置DataKeyNames属性,一旦我做了,我得到了与你相同的错误。我通过将Id作为参数添加到我的函数中解决了这个问题。