CommittableTransaction Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Beschrijft een doorvoerbare transactie.
public ref class CommittableTransaction sealed : System::Transactions::Transaction, IAsyncResult
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[System.Serializable]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
[<System.Serializable>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
Public NotInheritable Class CommittableTransaction
Inherits Transaction
Implements IAsyncResult
- Overname
- Kenmerken
- Implementeringen
Opmerkingen
De CommittableTransaction klasse biedt een expliciete manier voor toepassingen om een transactie te gebruiken, in plaats van impliciet de TransactionScope klasse te gebruiken. In tegenstelling tot de TransactionScope klasse moet de schrijver van de toepassing de Commit en Rollback methoden specifiek aanroepen om de transactie door te voeren of af te breken. Alleen de maker van een transactie kan de transactie echter doorvoeren. Daarom zijn kopieën van een doorvoerbare transactie die via de Transaction.Clone methode is verkregen, niet door te voeren.
Note
U wordt aangeraden impliciete transacties te maken met behulp van de TransactionScope klasse, zodat de context van de omgevingstransactie automatisch voor u wordt beheerd. U moet ook de TransactionScope en DependentTransaction klassen gebruiken voor toepassingen waarvoor dezelfde transactie moet worden gebruikt voor meerdere functie-aanroepen of meerdere thread-aanroepen. Zie het onderwerp Een impliciete transactie implementeren met behulp van transactiebereik voor meer informatie over dit model.
Als u een CommittableTransaction omgevingstransactie maakt, wordt de omgevingstransactie niet automatisch ingesteld. Dit is de transactie waarin uw code wordt uitgevoerd. U kunt de omgevingstransactie ophalen of instellen door de statische Transaction.Current eigenschap van het globale Transaction object aan te roepen. Zie de sectie 'Transaction Flow beheren met TransactionScopeOption' van het onderwerp Een impliciete transactie implementeren met behulp van transactiebereik voor meer informatie over omgevingstransacties. Als de omgevingstransactie niet is ingesteld, maakt een bewerking voor een Resource Manager geen deel uit van die transactie. U moet de omgevingstransactie expliciet instellen en opnieuw instellen om ervoor te zorgen dat resourcemanagers onder de juiste transactiecontext werken.
Totdat een CommittableTransaction is vastgelegd, worden alle resources die betrokken zijn bij de transactie nog steeds vergrendeld.
Een CommittableTransaction object kan niet opnieuw worden gebruikt. Zodra het is doorgevoerd of teruggedraaid, kan deze niet opnieuw worden gebruikt in een transactie of worden ingesteld als de huidige context van de omgevingstransactie.
Constructors
| Name | Description |
|---|---|
| CommittableTransaction() |
Initialiseert een nieuw exemplaar van de CommittableTransaction klasse. |
| CommittableTransaction(TimeSpan) |
Initialiseert een nieuw exemplaar van de CommittableTransaction klasse met de opgegeven |
| CommittableTransaction(TransactionOptions) |
Initialiseert een nieuw exemplaar van de CommittableTransaction klasse met de opgegeven transactieopties. |
Eigenschappen
| Name | Description |
|---|---|
| IsolationLevel |
Hiermee haalt u het isolatieniveau van de transactie op. (Overgenomen van Transaction) |
| PromoterType |
Identificeer de indeling van de |
| TransactionInformation |
Hiermee haalt u aanvullende informatie over een transactie op. (Overgenomen van Transaction) |
Methoden
| Name | Description |
|---|---|
| BeginCommit(AsyncCallback, Object) |
Begint een poging om de transactie asynchroon door te voeren. |
| Clone() |
Hiermee maakt u een kloon van de transactie. (Overgenomen van Transaction) |
| Commit() |
Probeert de transactie door te voeren. |
| DependentClone(DependentCloneOption) |
Hiermee maakt u een afhankelijke kloon van de transactie. (Overgenomen van Transaction) |
| Dispose() |
Publiceert de resources die door het object worden bewaard. (Overgenomen van Transaction) |
| EndCommit(IAsyncResult) |
Hiermee beëindigt u een poging om de transactie asynchroon vast te leggen. |
| EnlistDurable(Guid, IEnlistmentNotification, EnlistmentOptions) |
Hiermee wordt een duurzame resourcemanager opgenomen die ondersteuning biedt voor twee fasen om deel te nemen aan een transactie. (Overgenomen van Transaction) |
| EnlistDurable(Guid, ISinglePhaseNotification, EnlistmentOptions) |
Neemt een duurzame resourcemanager op die ondersteuning biedt voor optimalisatie van één fase voor doorvoeren om deel te nemen aan een transactie. (Overgenomen van Transaction) |
| EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid) |
Hiermee schakelt u een resourcemanager in die een interne transactie heeft met behulp van een promotable single phase enlistment (PSPE). (Overgenomen van Transaction) |
| EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification) |
Hiermee schakelt u een resourcemanager in die een interne transactie heeft met behulp van een promotable single phase enlistment (PSPE). (Overgenomen van Transaction) |
| EnlistVolatile(IEnlistmentNotification, EnlistmentOptions) |
Hiermee wordt een vluchtige resourcemanager opgenomen die ondersteuning biedt voor twee fasen om deel te nemen aan een transactie. (Overgenomen van Transaction) |
| EnlistVolatile(ISinglePhaseNotification, EnlistmentOptions) |
Neemt een vluchtige resourcemanager op die ondersteuning biedt voor optimalisatie van één fase voor doorvoeren om deel te nemen aan een transactie. (Overgenomen van Transaction) |
| Equals(Object) |
Bepaalt of deze transactie en het opgegeven object gelijk zijn. (Overgenomen van Transaction) |
| GetHashCode() |
Retourneert de hash-code voor dit exemplaar. (Overgenomen van Transaction) |
| GetPromotedToken() |
Hiermee haalt u de |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| PromoteAndEnlistDurable(Guid, IPromotableSinglePhaseNotification, ISinglePhaseNotification, EnlistmentOptions) |
Bevordert en neemt een duurzame resourcemanager op die ondersteuning biedt voor twee fasen om deel te nemen aan een transactie. (Overgenomen van Transaction) |
| Rollback() |
Hiermee wordt de transactie teruggedraaid (afgebroken). (Overgenomen van Transaction) |
| Rollback(Exception) |
Hiermee wordt de transactie teruggedraaid (afgebroken). (Overgenomen van Transaction) |
| SetDistributedTransactionIdentifier(IPromotableSinglePhaseNotification, Guid) |
Hiermee stelt u de gedistribueerde transactie-id in die is gegenereerd door de niet-MSDTC-organisator. (Overgenomen van Transaction) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
gebeurtenis
| Name | Description |
|---|---|
| TransactionCompleted |
Geeft aan dat de transactie is voltooid. (Overgenomen van Transaction) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IAsyncResult.AsyncState |
Hiermee haalt u het object op dat is opgegeven als de laatste parameter van de BeginCommit(AsyncCallback, Object) methode-aanroep. |
| IAsyncResult.AsyncWaitHandle |
Hiermee wordt een WaitHandle bewerking ophaalt die wordt gebruikt om te wachten tot een asynchrone bewerking is voltooid. |
| IAsyncResult.CompletedSynchronously |
Hiermee wordt aangegeven of de asynchrone doorvoerbewerking synchroon is voltooid. |
| IAsyncResult.IsCompleted |
Hiermee wordt aangegeven of de asynchrone doorvoerbewerking is voltooid. |
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Haalt een SerializationInfo op met de gegevens die nodig zijn om deze transactie te serialiseren. (Overgenomen van Transaction) |
Van toepassing op
Veiligheid thread
Dit type is thread veilig.