共用方式為


ISinglePhaseNotification 介面

定義

描述一個資源物件,其支援參與交易的單一階段交易認可最佳化。

public interface class ISinglePhaseNotification : System::Transactions::IEnlistmentNotification
public interface ISinglePhaseNotification : System.Transactions.IEnlistmentNotification
type ISinglePhaseNotification = interface
    interface IEnlistmentNotification
Public Interface ISinglePhaseNotification
Implements IEnlistmentNotification
實作

備註

您應該注意,即使您的資源管理員實作此介面來支援單一階段認可優化,也不保證它會收到單一階段認可。 交易管理員仍然可以改為傳送兩個階段認可通知。

若要將您的資源管理員登記為交易中的參與者,請呼叫 EnlistVolatile 類別的 Transaction 方法或 EnlistDurable 方法。 具體而言, EnlistmentOptions 參數應該等於 None ,以確保執行單一階段認可。 如果錯誤地設定為 EnlistDuringPrepareRequired ,則不會發生單一階段認可。

ISinglePhaseNotification由於介面衍生自 IEnlistmentNotification 介面,因此資源管理員也必須針對兩個階段認可通知實作後者的所有方法。 這是交易管理員的選擇,是用於此資源管理員的兩個階段認可或單一階段認可優化。 不過,實作此介面可讓資源管理員有機會在可用時利用優化。

如果使用優化,而交易管理員會呼叫 SinglePhaseCommit 編列資源的 方法,則資源管理員應該使用 類別的各種方法來 SinglePhaseEnlistment 回應此呼叫,以通知交易管理員是否要認可或回復交易管理員。

方法

Commit(Enlistment)

告知登記的物件正在認可交易。

(繼承來源 IEnlistmentNotification)
InDoubt(Enlistment)

告知登記的物件交易的狀態不確定。

(繼承來源 IEnlistmentNotification)
Prepare(PreparingEnlistment)

告知登記的物件正在準備認可交易。

(繼承來源 IEnlistmentNotification)
Rollback(Enlistment)

告知登記的物件正在復原 (中止) 交易。

(繼承來源 IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment)

表示資源管理員之單一階段交易認可最佳化的回呼實作。

適用於

另請參閱