System.Transactions.TransactionStatePhase0.EnlistDurable C# (CSharp) Method

EnlistDurable() private method

private EnlistDurable ( InternalTransaction tx, System.Guid resourceManagerIdentifier, IEnlistmentNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction ) : Enlistment
tx InternalTransaction
resourceManagerIdentifier System.Guid
enlistmentNotification IEnlistmentNotification
enlistmentOptions EnlistmentOptions
atomicTransaction Transaction
return Enlistment
        internal override Enlistment EnlistDurable(
            InternalTransaction tx,
            Guid resourceManagerIdentifier,
            IEnlistmentNotification enlistmentNotification,
            EnlistmentOptions enlistmentOptions,
            Transaction atomicTransaction
            )
        {
            tx.ThrowIfPromoterTypeIsNotMSDTC();

            Enlistment en = base.EnlistDurable(tx, resourceManagerIdentifier, enlistmentNotification,
                enlistmentOptions, atomicTransaction);

            // Calling durable enlist in Phase0 may cause the transaction to promote.  Leverage the promoted
            tx.State.RestartCommitIfNeeded(tx);
            return en;
        }

Same methods

TransactionStatePhase0::EnlistDurable ( InternalTransaction tx, System.Guid resourceManagerIdentifier, ISinglePhaseNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction ) : Enlistment