public override void CommitTransaction()
{
if (_transaction == null)
throw new Exception("Cannot commit transaction, transaction was not started");
var transaction = _transaction;
_transaction = null;
transaction.Commit();
}