ISinglePhaseNotification Interfejs
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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. |