BindingSource的EndEdit方法与DataAdapter的Update,在提交到数据库时候需要注意所绑定的DataTable是否直接关联DataSet与DataAdapter,否侧无法正常提交到数据库文件,只能提交到Table里面。随后需要自己写方法从Table提交到数据库。
若使用的Table关联了DataSet与DataAdapter,则BindingSource的EndEdit方法与DataAdapter的Update可正常提交。
Code:
Dim mdt As DataTablePublic Sub DoWork()
'根据Id加载方案列表
If TParam.WellProperty Is Nothing Then
Exit Sub
End If
Dim sqls As String = String.Format("select * from designresult where id='{0}'", TParam.WellProperty.ID)
mdt = SQLHelper.Query(sqls, "designResult")
bSource.DataSource = mdt
bNavigator.BindingSource = bSource
dgv1.DataSource = bSource
End Sub
Try
dgv1.EndEdit()
bSource.EndEdit()
'这里datasource的endedit只是提交到datatable,因为这个dt并不是直接关联dataAdapter的,因此endedit无法提交到实体数据库
SQLHelper.ExecuteDT(mdt, "designresult")
Catch ex As Exception
Common.ExcNow(ex)
End Try
End Sub