如何将自己的方法属性分配给ObjectDataSource?

时间:2013-07-17 15:15:34

标签: c# webforms objectdatasource

我的ObjectDataSource像这样被证实:

<asp:ObjectDataSource ID="x" runat="server" InsertMethod="xx"
    SelectMethod="xxx" TypeName="xxxx"
    UpdateMethod="xxxxx">

选择,插入,更新方法按照您的预期进行;选择所有数据,插入数据和更新数据。我的问题是,有没有办法可以指定另一种方法,例如第二个选择选择不同的数据或deleteMethod?

1 个答案:

答案 0 :(得分:2)

是的,你可以。对于任何操作,总是在实际执行操作之前引发事件,在执行操作之后总是引发一个事件。

因此,在您的情况下,它是选择操作。在此操作之前引发的事件将是x.Selecting。

将.aspx中的此事件处理程序设置为

<asp:ObjectDataSource ID="x" runat="server" InsertMethod="xx"
SelectMethod="xxx" TypeName="xxxx"
UpdateMethod="xxxxx" OnSelecting="x_Selecting">

现在,在这个选择事件处理程序中,动态更改select方法,其中'x'是对象DataSource的ID。

protected void x_Selecting()
{ x.SelectMethod="My_new_SelectMethod";
}

执行select操作时,将使用此新方法,然后将引发x.Selected事件。