/// to begin a transaction on an existing TDBTransaction object. public void BeginTransaction(TDataBase ADataBase, IsolationLevel AIsolationLevel, string ATransactionName = "") { FTransactionIdentifier = System.Guid.NewGuid(); FTransactionName = ATransactionName; TLogging.LogAtLevel(DBAccess.DB_DEBUGLEVEL_TRANSACTION, "Begin Transaction " + ATransactionName + " in Connection " + ADataBase.ConnectionName + " with level " + AIsolationLevel.ToString("G")); FWrappedTransaction = ADataBase.BeginDbTransaction(AIsolationLevel); FTDataBaseInstanceThatTransactionBelongsTo = ADataBase; FAppDomainThatTransactionWasStartedIn = AppDomain.CurrentDomain; FThreadThatTransactionWasStartedOn = Thread.CurrentThread; FStackTraceAtPointOfTransactionStart = new StackTrace(true); }