我将所有自定义“更新”代码放在RowCommand事件中,它工作正常,但我仍然从我的数据源中收到错误
System.NotSupportedException:正在更新 ObjectDataSource不支持 'GetSources'除非UpdateMethod 已指定。
如何摆脱该错误,是的仍然在rowcommand上使用我的自定义更新代码?
答案 0 :(得分:0)
好吧,我认为ObjectDataSource的使用方式是在自定义业务对象中指定方法的名称,它将使用反射来调用该方法。
因此,您的页面和对象可能如下所示:
<asp:objectdatasource
id="ObjectDataSource2"
runat="server"
updatemethod="MyUpdateMethod"
typename="MyBusinessObject">
<updateparameters>
<asp:controlparameter name="anID" controlid="DropDownList1" propertyname="SelectedValue" />
</updateparameters>
</asp:objectdatasource>
Public Class MyBusinessObject
Public Shared Sub MyUpdateMethod(anID As String)
'data access code
End Sub
End Class
这种把控制放在一起的模式可以很有效率,但是你可能会在一段时间后感到受限制。