System.Transactions.TransactionStatePromotedNonMSDTCBase.Rollback C# (CSharp) Method

Rollback() private method

private Rollback ( InternalTransaction tx, Exception e ) : void
tx InternalTransaction
e Exception
return void
        internal override void Rollback(InternalTransaction tx, Exception e)
        {
            // Start the process for abort.  Transitioning to the Aborted state will cause
            // the tx.durableEnlistment to get aborted, which is how the non-MSDTC
            // transaction promoter will get notified of the abort.
            Debug.Assert(tx._durableEnlistment != null, "PromotedNonMSDTC state is not valid for transaction");

            if (tx._innerException == null)
            {
                tx._innerException = e;
            }

            TransactionStateAborted.EnterState(tx);
        }