ISinglePhaseNotification Interfejs

Definicja

Opisuje obiekt zasobu, który obsługuje optymalizację zatwierdzania pojedynczego etapu w celu uczestnictwa w transakcji.

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

Uwagi

Należy pamiętać, że nawet jeśli menedżer zasobów implementuje ten interfejs w celu obsługi optymalizacji zatwierdzeń jednofazowych, nie ma gwarancji, że otrzymuje jedno zatwierdzenie fazy. Menedżer transakcji nadal może wysyłać powiadomienia o zatwierdzeniu dwóch faz.

Aby zarejestrować menedżera zasobów jako uczestnika transakcji, wywołaj EnlistVolatile metodę lub EnlistDurable metodę Transaction klasy. W szczególności parametr powinien być równy, aby EnlistmentOptions upewnić się, None że jest wykonywane jednofazowe zatwierdzenie. Jeśli zostanie ona błędnie ustawiona na EnlistDuringPrepareRequiredwartość , nie wystąpi żadne zatwierdzenie jednofazowe.

ISinglePhaseNotification Ponieważ interfejs pochodzi z interfejsuIEnlistmentNotification, menedżer zasobów musi również zaimplementować wszystkie metody drugiego dla dwóch powiadomień zatwierdzenia fazy. Jest to wybór menedżera transakcji co do tego, czy w tym menedżerze zasobów jest używane zatwierdzenie dwufazowe, czy optymalizacja zatwierdzania pojedynczego etapu. Jednak zaimplementowanie tego interfejsu daje menedżerowi zasobów możliwość skorzystania z optymalizacji, gdy jest dostępna.

Jeśli jest używana optymalizacja, a menedżer transakcji wywołuje SinglePhaseCommit metodę zasobu wymienionego na liście, menedżer zasobów powinien odpowiedzieć na to wywołanie przy użyciu różnych metod SinglePhaseEnlistment klasy, aby poinformować menedżera transakcji, jeśli transakcja ma zostać zatwierdzona lub wycofana.

Metody

Nazwa Opis
Commit(Enlistment)

Powiadamia obiekt enlisted, że transakcja jest zatwierdzana.

(Odziedziczone po IEnlistmentNotification)
InDoubt(Enlistment)

Powiadamia obiekt z listy, że stan transakcji jest wątpliwy.

(Odziedziczone po IEnlistmentNotification)
Prepare(PreparingEnlistment)

Powiadamia obiekt z listy, że transakcja jest przygotowywana do zobowiązania.

(Odziedziczone po IEnlistmentNotification)
Rollback(Enlistment)

Powiadamia obiekt z listy, że transakcja jest cofana (przerwana).

(Odziedziczone po IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment)

Reprezentuje implementację menedżera zasobów wywołania zwrotnego na potrzeby optymalizacji zatwierdzeń jednofazowych.

Dotyczy

Zobacz też