I am trying to use transactions in my VB.net program. I have opened a connection, and have opened a transaction on it and
Dim m_objConn As OleDb.OleDbConnection
Dim m_objTrans As OleDb.OleDbTransaction
Dim m_objDA As OleDb.OleDbDataAdapter
m_objTrans = m_objConn.BeginTransaction()
I have a function like this :
Public Function ExecuteCommand(ByVal strQuery As String) As DataSet
'*** Create a new Data Adapter by passing the query and the connection
'*** object to it. Fill the dataset against that Dataadapter and
'*** return the dataset back to the calling function.
Dim objDS As New DataSet()
Dim objDA As New OleDb.OleDbDataAdapter(strQuery, m_objConn)
I am not using any command object in the code.
1. Is that ok? Can i populate my DAtaSet without using the command object?
2. When I execute the program, an InvalidOperationException is thrown with the following additional info:
Execute requires the command to have a transaction object when the connection assigned to the command is in a pending local transaction. The transaction property of the command has not been initialized.
Now The question is, when I am not using the command object, why am I getting this error?