Transaction.EnlistDurable Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Присоединяет диспетчер долгосрочных ресурсов для участия в транзакции.
Перегрузки
EnlistDurable(Guid, IEnlistmentNotification, EnlistmentOptions) |
Присоединяет диспетчер долгосрочных ресурсов, поддерживающий двухфазную фиксацию, для участия в транзакции. |
EnlistDurable(Guid, ISinglePhaseNotification, EnlistmentOptions) |
Присоединяет диспетчер долгосрочных ресурсов, поддерживающий однофазную оптимизацию фиксации, для участия в транзакции. |
Комментарии
Примечание
Этот метод использует , LinkDemand чтобы предотвратить вызов из ненадежного кода; однако только непосредственный вызывающий объект должен обладать набором FullTrust
разрешений.
EnlistDurable(Guid, IEnlistmentNotification, EnlistmentOptions)
- Исходный код:
- Transaction.cs
- Исходный код:
- Transaction.cs
- Исходный код:
- Transaction.cs
Присоединяет диспетчер долгосрочных ресурсов, поддерживающий двухфазную фиксацию, для участия в транзакции.
public:
System::Transactions::Enlistment ^ EnlistDurable(Guid resourceManagerIdentifier, System::Transactions::IEnlistmentNotification ^ enlistmentNotification, System::Transactions::EnlistmentOptions enlistmentOptions);
public System.Transactions.Enlistment EnlistDurable (Guid resourceManagerIdentifier, System.Transactions.IEnlistmentNotification enlistmentNotification, System.Transactions.EnlistmentOptions enlistmentOptions);
member this.EnlistDurable : Guid * System.Transactions.IEnlistmentNotification * System.Transactions.EnlistmentOptions -> System.Transactions.Enlistment
Public Function EnlistDurable (resourceManagerIdentifier As Guid, enlistmentNotification As IEnlistmentNotification, enlistmentOptions As EnlistmentOptions) As Enlistment
Параметры
- resourceManagerIdentifier
- Guid
Уникальный идентификатор диспетчера ресурсов, который должен оставаться неизменным при сбое в работе диспетчера ресурсов или при перезагрузке.
- enlistmentNotification
- IEnlistmentNotification
Объект, реализующий интерфейс IEnlistmentNotification для получения уведомлений о двухфазной фиксации.
- enlistmentOptions
- EnlistmentOptions
EnlistDuringPrepareRequired, если диспетчер ресурсов будет выполнять дополнительные действия на этапе подготовки.
Возвращаемое значение
Объект Enlistment, который описывает перечисление.
Комментарии
Диспетчеры ресурсов с устойчивым зачислением должны иметь возможность выполнить восстановление в случае сбоя. Дополнительные сведения о восстановлении см. в разделе Выполнение восстановления. Дополнительные сведения о нестабильных и устойчивых ресурсах, а также о том, как завербовать ресурс, см. в статье Реализация Resource Manager. Дополнительные сведения о том, как диспетчер ресурсов реагирует на уведомление о фиксации и подготавливает фиксацию в двухфазной фиксации, см. в разделе Фиксация транзакции в Single-Phase и многофазной фиксации.
Диспетчеры ресурсов, зачисленные для участия в транзакции с помощью этого метода, получают уведомления о двухфазной фиксации, соответствующие методам, определенным в интерфейсе IEnlistmentNotification .
Применяется к
EnlistDurable(Guid, ISinglePhaseNotification, EnlistmentOptions)
- Исходный код:
- Transaction.cs
- Исходный код:
- Transaction.cs
- Исходный код:
- Transaction.cs
Присоединяет диспетчер долгосрочных ресурсов, поддерживающий однофазную оптимизацию фиксации, для участия в транзакции.
public:
System::Transactions::Enlistment ^ EnlistDurable(Guid resourceManagerIdentifier, System::Transactions::ISinglePhaseNotification ^ singlePhaseNotification, System::Transactions::EnlistmentOptions enlistmentOptions);
public System.Transactions.Enlistment EnlistDurable (Guid resourceManagerIdentifier, System.Transactions.ISinglePhaseNotification singlePhaseNotification, System.Transactions.EnlistmentOptions enlistmentOptions);
member this.EnlistDurable : Guid * System.Transactions.ISinglePhaseNotification * System.Transactions.EnlistmentOptions -> System.Transactions.Enlistment
Public Function EnlistDurable (resourceManagerIdentifier As Guid, singlePhaseNotification As ISinglePhaseNotification, enlistmentOptions As EnlistmentOptions) As Enlistment
Параметры
- resourceManagerIdentifier
- Guid
Уникальный идентификатор диспетчера ресурсов, который должен оставаться неизменным при сбое в работе диспетчера ресурсов или при перезагрузке.
- singlePhaseNotification
- ISinglePhaseNotification
Объект, реализующий интерфейс ISinglePhaseNotification, который должен быть способен получать уведомления об однофазной и двухфазной фиксации.
- enlistmentOptions
- EnlistmentOptions
EnlistDuringPrepareRequired, если диспетчер ресурсов будет выполнять дополнительные действия на этапе подготовки.
Возвращаемое значение
Объект Enlistment, который описывает перечисление.
Комментарии
Диспетчеры ресурсов с устойчивым зачислением должны иметь возможность выполнить восстановление в случае сбоя. Дополнительные сведения о восстановлении см. в разделе Выполнение восстановления. Дополнительные сведения о нестабильных и устойчивых ресурсах, а также о том, как завербовать ресурс, см. в статье Реализация Resource Manager.
Следует отметить, что даже если реализация Resource Manager использует этот метод, она не гарантирует, что она получит однофазную фиксацию. Диспетчер транзакций по-прежнему может отправлять уведомления о двухфазной фиксации. Дополнительные сведения об оптимизации однофазной фиксации см. в разделах Оптимизация с помощью однофазной фиксации и Промотируемое однофазное уведомление.