EnlistmentOptions 枚举

定义

确定是否应该在准备阶段登记该对象。

此枚举支持其成员值的按位组合。

public enum class EnlistmentOptions
[System.Flags]
public enum EnlistmentOptions
[<System.Flags>]
type EnlistmentOptions = 
Public Enum EnlistmentOptions
继承
EnlistmentOptions
属性

字段

EnlistDuringPrepareRequired 1

该对象必须在提交过程的初始阶段中进行登记。

None 0

该对象在提交过程的初始阶段中不需要登记。

注解

此枚举传递到 和 EnlistDurable 方法中EnlistVolatile,以通知事务管理器资源管理器是否需要在准备阶段创建另一个登记。 有关登记的详细信息,请参阅将 资源登记为事务中的参与者

如果在登记期间指定了 EnlistDuringPrepareRequired,则资源管理器指示它想要接收准备通知,同时仍允许对事务进行新的登记。 充当另一个持久资源(如后端数据库)的缓存的资源管理器可能会在登记期间使用此选项。 当缓存资源收到其准备通知时,它会将其内容传输到持久资源。 通过这样做,持久资源在事务上登记成为 2 阶段提交 (2PC) 协议的参与者。 在此之前,只登记了缓存资源 (不登记持久资源) 。

如果指定 None,则登记指示在为时已晚,在 2PC 中创建新登记之前,它不会收到“准备”通知。 在前面的方案中,如果缓存资源在登记期间指定了此选项,并在“准备”通知期间尝试刷新其缓存,则持久资源在尝试登记时会收到异常,因为为时已晚。

无 应用作默认值。

适用于