diff --git a/Database/Adapters/MSSQLServer.vb b/Database/Adapters/MSSQLServer.vb
index 44ef40f7..344bb3c8 100644
--- a/Database/Adapters/MSSQLServer.vb
+++ b/Database/Adapters/MSSQLServer.vb
@@ -109,29 +109,31 @@ Public Class MSSQLServer
End Try
End Function
- Private Function MaybeGetTransaction(Connection As SqlConnection, Mode As TransactionMode, Transaction As SqlTransaction) As SqlTransaction
- If Connection Is Nothing Then
+ Private Function MaybeGetTransaction(pConnection As SqlConnection, pTransactionMode As TransactionMode, pTransaction As SqlTransaction) As SqlTransaction
+ If pConnection Is Nothing Then
Throw New ArgumentNullException("Connection", "Could not get transaction because connection is null!")
End If
- If Mode = TransactionMode.NoTransaction Then
+ Logger.Debug("Transaction Mode: [{0}]", pTransactionMode.ToString)
+
+ If pTransactionMode = TransactionMode.NoTransaction Then
Return Nothing
- ElseIf Mode = TransactionMode.ExternalTransaction Then
- Return Transaction
+ ElseIf pTransactionMode = TransactionMode.ExternalTransaction Then
+ Return pTransaction
Else
- Return Connection.BeginTransaction()
+ Return pConnection.BeginTransaction()
End If
End Function
- Private Function MaybeCommitTransaction(Transaction As SqlTransaction, TransactionMode As TransactionMode) As Boolean
- Select Case TransactionMode
+ Private Function MaybeCommitTransaction(pTransaction As SqlTransaction, pTransactionMode As TransactionMode) As Boolean
+ Select Case pTransactionMode
Case TransactionMode.NoTransaction
Return True
Case TransactionMode.ExternalTransaction
Return True
Case TransactionMode.WithTransaction
Try
- Transaction.Commit()
+ pTransaction.Commit()
Return True
Catch ex As Exception
Logger.Warn("Error while committing transaction!")
@@ -225,15 +227,15 @@ Public Class MSSQLServer
'''
''' This Function intentionally has no try..catch block to have any errors caught outside
'''
- '''
+ '''
'''
- Private Function OpenSQLConnection(Connection As SqlConnection) As SqlConnection
+ Private Function OpenSQLConnection(pConnection As SqlConnection) As SqlConnection
Try
- If Connection.State = ConnectionState.Closed Then
- Connection.Open()
+ If pConnection.State = ConnectionState.Closed Then
+ pConnection.Open()
End If
- Return Connection
+ Return pConnection
Catch ex As Exception
Logger.Error("Error while opening Connection!")
Logger.Error(ex)
@@ -333,6 +335,20 @@ Public Class MSSQLServer
End Using
End Function
+ Public Async Function GetDatatableWithConnectionObjectAsync(pSqlCommand As String, pSqlConnection As SqlConnection,
+ Optional pTransactionMode As TransactionMode = TransactionMode.WithTransaction,
+ Optional pTransaction As SqlTransaction = Nothing,
+ Optional pTimeout As Integer = Constants.DEFAULT_TIMEOUT) As Task(Of DataTable)
+ Return Await Task.Run(Function() GetDatatableWithConnectionObject(pSqlCommand, pSqlConnection, pTransactionMode, pTransaction, pTimeout))
+ End Function
+
+ Public Async Function GetDatatableWithConnectionObjectAsync(pSqlCommandObject As SqlCommand, pSqlConnection As SqlConnection,
+ Optional pTransactionMode As TransactionMode = TransactionMode.WithTransaction,
+ Optional pTransaction As SqlTransaction = Nothing,
+ Optional pTimeout As Integer = Constants.DEFAULT_TIMEOUT) As Task(Of DataTable)
+ Return Await Task.Run(Function() GetDatatableWithConnectionObject(pSqlCommandObject, pSqlConnection, pTransactionMode, pTransaction, pTimeout))
+ End Function
+
Public Function GetDatatableWithConnectionObject(pSqlCommand As String, pSqlConnection As SqlConnection,
Optional pTransactionMode As TransactionMode = TransactionMode.WithTransaction,
Optional pTransaction As SqlTransaction = Nothing,