C# 如何取消绑定ObjectDataSource?
CheckPara是我的OnDataBinding过程 SqlDataSource1是ObjectDataSource(它只是一个容易混淆的名称) 语言是内默尔语,但如果你懂C,你就能很容易地读出来C# 如何取消绑定ObjectDataSource?,c#,asp.net,objectdatasource,nemerle,C#,Asp.net,Objectdatasource,Nemerle,CheckPara是我的OnDataBinding过程 SqlDataSource1是ObjectDataSource(它只是一个容易混淆的名称) 语言是内默尔语,但如果你懂C,你就能很容易地读出来 protected virtual CheckPara(_ : object, _ : System.EventArgs) : void { foreach(x is Parameter in SqlDataSource1.SelectParameters)
protected virtual CheckPara(_ : object, _ : System.EventArgs) : void
{
foreach(x is Parameter in SqlDataSource1.SelectParameters)
when(x.DefaultValue=="") //Cancel binding
}
那么,当没有完全配置的ObjectDataSource时,如何取消绑定呢
或者。。。如何仅在处理完所有参数后才能运行绑定?ASP.NET默认情况下不绑定。您必须调用
DataBind
。调用Page.DataBind
将调用所有控件的DataBind
方法。因此,准备好后只需调用控件的DataBind
。使用ObjectDataSource
时,我通常不调用Page.DataBind
如果在Web表单(aspx)页面中声明了ObjectDataSource
,则在page.Load
事件之后和控件的Load
事件之前立即调用控件的DataBind
方法。ObjectCreating
和ObjectCreated
事件可能对您有所帮助。下面是设置业务对象的连接字符串的示例
默认情况下,ASP.NET不绑定。您必须调用
DataBind
。调用Page.DataBind
将调用所有控件的DataBind
方法。因此,准备好后只需调用控件的DataBind
。使用ObjectDataSource
时,我通常不调用Page.DataBind
如果在Web表单(aspx)页面中声明了ObjectDataSource
,则在page.Load
事件之后和控件的Load
事件之前立即调用控件的DataBind
方法。ObjectCreating
和ObjectCreated
事件可能对您有所帮助。下面是设置业务对象的连接字符串的示例
使用ObjectDataSource的Selecting事件,放置for选择循环,如果要取消绑定,请使用e.Cacnel=true,这样就完成了 使用ObjectDataSource的Selecting事件,放置select的for循环,如果要取消绑定,请使用e.Cacnel=true,这样就完成了 默认情况下,它为我绑定:-/。我的页面上没有绑定方法\u加载。。。仅设置一些参数。找不到它绑定的地方…啊,我刚想起来。您是否在aspx文件中声明了ObjectDataSource?如果是这样的话,它将数据绑定到。。。。处理ObjectCreating事件对你有帮助吗?啊,我刚想起来。您是否在aspx文件中声明了ObjectDataSource?如果是这样,它会在Page.Load事件之后和Control.Load事件之前立即绑定数据。处理ObjectCreating事件是否会帮助您。默认情况下,它为我绑定:-/。我的页面上没有绑定方法\u加载。。。仅设置一些参数。找不到它绑定的地方…啊,我刚想起来。您是否在aspx文件中声明了ObjectDataSource?如果是这样的话,它将数据绑定到。。。。处理ObjectCreating事件对你有帮助吗?啊,我刚想起来。您是否在aspx文件中声明了ObjectDataSource?如果是这样,它会在Page.Load事件之后和Control.Load事件之前立即绑定数据。处理ObjectCreating事件将对您有所帮助。
<asp:ObjectDataSource
ID="__definitionCategoryDataSource"
runat="server"
OldValuesParameterFormatString="original_{0}"
SelectMethod="GetData"
TypeName="Missico.Data.DefinitionDataSetTableAdapters.DefinitionCategoryTableAdapter">
</asp:ObjectDataSource>
Protected Sub __definitionCategoryDataSource_ObjectCreated( _
ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.ObjectDataSourceEventArgs) _
Handles __definitionCategoryDataSource.ObjectCreated
If e.ObjectInstance IsNot Nothing Then
SetObjectDataSourceConnectionString(e.ObjectInstance, DataManager.ConnectionString)
End If
End Sub
Public Sub SetObjectDataSourceConnectionString( _
ByVal objectInstance As Object, _
ByVal connectionString As String)
If objectInstance IsNot Nothing Then
Dim oConnection As System.Data.Common.DbConnection
oConnection = objectInstance.GetType.GetProperty("Connection").GetValue(objectInstance, Nothing)
oConnection.ConnectionString = DataManager.ConnectionString
End If
End Sub