1
我与访问Oracle数据库的传统应用程序通过使用System.Data.OracleClient
工作的OracleTransaction
像这样:Oracle事务
Public Sub ExecuteOracleSql(ByVal sql As String)
Dim oCmd As New OracleCommand(sql, _dbConnection)
Try
oCmd.Transaction = _transaction 'OracleTransaction
oCmd.ExecuteNonQuery()
Finally
oCmd.Dispose()
End Try
End Sub
我们既然做出了决定,所有新开发将通过实体框架进行,但是我们想要参与遗留代码使用的同一事务。
经过一番研究,我发现了ObjectContext.Connection.EnlistTransaction()
方法,但是这个方法接受System.Transaction.Transaction
而不是上面的OracleTransaction
。
因此,是否有可能在遗留代码和EF之间共享事务?