0

我有一个包含 5 列的列表视图,它通过存储过程填充。那显示得很好。我还有一个 Delete 方法,它只接受一个 int(ID),但我不确定如何在列表视图的 dataSource 中定义这个方法。

我不断收到一个错误,即没有包含 5 个参数(列表视图的列名)的 Delete 方法,当然没有。有一个接受 1 个 int 参数,见下文。

我认为 DataSource Delete 方法声明一定有一些错误,谁能告诉我?

<asp:ObjectDataSource ID="userListDataSource" runat="server" 
            SelectMethod="GetUserList" TypeName="UserManagerBO" 
            DeleteMethod="DeleteUser">
            <DeleteParameters>
                <asp:Parameter Name="userID" Type="Int32"/>
            </DeleteParameters>
        <SelectParameters>
            <asp:ControlParameter DefaultValue="61" Name="userID" Type="Int32" 
                ControlID="lbUsers" PropertyName="SelectedValue" />
        </SelectParameters>
</asp:ObjectDataSource>

删除的方法是DeleteUser(int userID),它似乎总是查看 SelectParameters,即使对于我的 Delete 方法也是如此。

4

1 回答 1

0

尝试不要为删除方法提供参数,通过这样做,您可以获得选择删除的整个对象作为参数。在删除方法中,

Public Void DeleteUser(User usr)
{
        //delete user of usr.UserID
}
于 2012-06-05T14:39:26.107 回答