Transaction::EnlistDurable Method (Guid, ISinglePhaseNotification^, EnlistmentOptions)
Enlists a durable resource manager that supports single phase commit optimization to participate in a transaction.
Assembly: System.Transactions (in System.Transactions.dll)
public: [PermissionSetAttribute(SecurityAction::LinkDemand, Name = "FullTrust")] Enlistment^ EnlistDurable( Guid resourceManagerIdentifier, ISinglePhaseNotification^ singlePhaseNotification, EnlistmentOptions enlistmentOptions )
Parameters
- resourceManagerIdentifier
-
Type:
System::Guid
A unique identifier for a resource manager, which should persist across resource manager failure or reboot.
- singlePhaseNotification
-
Type:
System.Transactions::ISinglePhaseNotification^
An object that implements the ISinglePhaseNotification interface that must be able to receive single phase commit and two phase commit notifications.
- enlistmentOptions
-
Type:
System.Transactions::EnlistmentOptions
EnlistDuringPrepareRequired if the resource manager wants to perform additional work during the prepare phase.
Return Value
Type: System.Transactions::Enlistment^An Enlistment object that describes the enlistment.
Resource managers with a durable enlistment must be able to perform recovery if they experience a failure. For more information on recovery, see Performing Recovery. For more information on volatile and durable resources, as well as how to enlist a resource, see Implementing A Resource Manager.
You should note that even when your resource manager implementation enlists with this method, it is not guaranteed that it receives a single phase commit. The transaction manager can still send two phase commit notifications instead. For more information on the single phase commit optimization, see Optimization Using Single Phase Commit and Promotable Single Phase Notification.
Available since 2.0