System.Transactions Namnområde

Innehåller klasser som gör att du kan skriva ett eget transaktionsprogram och en resurshanterare. Mer specifikt kan du skapa och delta i en transaktion (lokal eller distribuerad) med en eller flera deltagare.

Klasser

Name Description
CommittableTransaction

Beskriver en transaktion som kan checkas in.

DependentTransaction

Beskriver en klon av en transaktion som garanterar att transaktionen inte kan checkas in förrän programmet kommer till vila angående arbetet med transaktionen. Det går inte att ärva den här klassen.

DistributedTransactionPermission

Behörigheten som krävs av System.Transactions när hanteringen av en transaktion eskaleras till MSDTC. Det går inte att ärva den här klassen.

DistributedTransactionPermissionAttribute

Tillåter att säkerhetsåtgärder tillämpas DistributedTransactionPermission på kod med deklarativ säkerhet. Det går inte att ärva den här klassen.

Enlistment

Underlättar kommunikationen mellan en registrerad transaktionsdeltagare och transaktionshanteraren under den sista fasen av transaktionen.

PreparingEnlistment

Underlättar kommunikationen mellan en registrerad transaktionsdeltagare och transaktionshanteraren under förberedelsefasen av transaktionen.

SinglePhaseEnlistment

Tillhandahåller en uppsättning återanrop som underlättar kommunikationen mellan en deltagare som är registrerad för enstaka fasincheckning och transaktionshanteraren när meddelandet SinglePhaseCommit(SinglePhaseEnlistment) tas emot.

SubordinateTransaction

Representerar en icke-rotad transaktion som kan delegeras. Det går inte att ärva den här klassen.

Transaction

Representerar en transaktion.

TransactionAbortedException

Undantaget som utlöses när en åtgärd görs för en transaktion som redan har återställts eller ett försök görs att genomföra transaktionen och transaktionen avbryts.

TransactionEventArgs

Innehåller data för följande transaktionshändelser: DistributedTransactionStarted, TransactionCompleted.

TransactionException

Undantaget som utlöses när du försöker arbeta med en transaktion som inte kan acceptera nytt arbete.

TransactionInDoubtException

Undantaget som utlöses när en åtgärd görs för en transaktion som är osäker eller ett försök görs att genomföra transaktionen och transaktionen blir InDoubt.

TransactionInformation

Innehåller ytterligare information om en transaktion.

TransactionInterop

Underlättar interaktion mellan System.Transactions och komponenter som tidigare skrivits för att interagera med MSDTC, COM+eller System.EnterpriseServices. Det går inte att ärva den här klassen.

TransactionManager

Innehåller metoder som används för transaktionshantering. Det går inte att ärva den här klassen.

TransactionManagerCommunicationException

Undantaget som utlöses när en resurshanterare inte kan kommunicera med transaktionshanteraren.

TransactionPromotionException

Undantaget som utlöses när en befordran misslyckas.

TransactionScope

Gör ett kodblock transaktionellt. Det går inte att ärva den här klassen.

Strukturer

Name Description
TransactionOptions

Innehåller ytterligare information som anger transaktionsbeteenden.

Gränssnitt

Name Description
IDtcTransaction

Beskriver en DTC-transaktion.

IEnlistmentNotification

Beskriver ett gränssnitt som en resurshanterare ska implementera för att tillhandahålla återanrop för två faser av incheckningsmeddelanden för transaktionshanteraren vid registrering för deltagande.

IPromotableSinglePhaseNotification

Beskriver ett objekt som fungerar som ett incheckningsdelegat för en icke-distribuerad transaktion som är intern för en resurshanterare.

ISimpleTransactionSuperior

Representerar en transaktion som inte är en rottransaktion, men som kan eskaleras så att den hanteras av MSDTC.

ISinglePhaseNotification

Beskriver ett resursobjekt som stöder enfasincheckningsoptimering för att delta i en transaktion.

ITransactionPromoter

Beskriver en delegerad transaktion för en befintlig transaktion som kan eskaleras så att den hanteras av MSDTC vid behov.

Uppräkningar

Name Description
DependentCloneOption

Styr vilken typ av beroende transaktion som ska skapas.

EnlistmentOptions

Avgör om objektet ska registreras under förberedelsefasen.

EnterpriseServicesInteropOption

Anger hur distribuerade transaktioner interagerar med COM+-transaktioner.

IsolationLevel

Anger isoleringsnivån för en transaktion.

TransactionScopeAsyncFlowOption

Anger om transaktionsflödet mellan trådfortsättningar är aktiverat för TransactionScope.

TransactionScopeOption

Innehåller ytterligare alternativ för att skapa ett transaktionsomfång.

TransactionStatus

Beskriver den aktuella statusen för en distribuerad transaktion.

Delegeringar

Name Description
HostCurrentTransactionCallback

Tillhandahåller en mekanism för värdmiljön för att tillhandahålla sin egen standardbegrepp om Current.

TransactionCompletedEventHandler

Representerar den metod som hanterar händelsen för TransactionCompleted en Transaction klass.

TransactionStartedEventHandler

Representerar den metod som ska hantera händelsen för DistributedTransactionStarted en TransactionManager klass.

Kommentarer

Infrastrukturen System.Transactions gör transaktionsprogrammering enkel och effektiv i hela plattformen genom att stödja transaktioner som initieras i SQL Server, ADO.NET, MSMQ och Microsoft Distributed Transaction Coordinator (MSDTC). Den tillhandahåller både en explicit programmeringsmodell baserad på Transaction klassen, samt en implicit programmeringsmodell med hjälp av TransactionScope klassen, där transaktioner hanteras automatiskt av infrastrukturen. Vi rekommenderar starkt att du använder den enklare implicita modellen för utveckling. Kom igång genom att läsa avsnittet Implementera en implicit transaktion med transaktionsomfång . Mer information om hur du skriver ett transaktionsprogram finns i Skriva ett transaktionsprogram.

System.Transactions innehåller också typer som du kan använda för att implementera en resurshanterare. Transaktionshanteraren som är inbyggd i System.Transactions infrastrukturen gör det möjligt för flyktiga resurser eller en enda varaktig resursregistrering att checka in eller återställa effektivt. Mer information om hur du implementerar en resource manager finns i Implementing A Resource Manager.

Transaktionshanteraren eskalerar också transparent lokala transaktioner till distribuerade transaktioner genom att samordna via en diskbaserad transaktionshanterare som DTC, när en ytterligare beständig resurshanterare registrerar sig med en transaktion. Det finns två viktiga sätt som System.Transactions infrastrukturen ger bättre prestanda på.

  • Dynamisk eskalering, vilket innebär att System.Transactions infrastrukturen endast engagerar MSDTC när den faktiskt krävs för en transaktion. Det här området beskrivs ingående i avsnittet Om eskalering av transaktionshantering .

  • Promotable Enlistments, som gör det möjligt för en resurs, till exempel en databas, att ta ägarskapet för transaktionen om det är den enda entitet som deltar i transaktionen. Senare, om det behövs, System.Transactions kan infrastrukturen fortfarande eskalera hanteringen av transaktionen till MSDTC. Detta minskar ytterligare risken för att använda MSDTC. Det här området beskrivs ingående i avsnittet Optimering med hjälp av enfasincheckning och promotable-meddelande för en fas .

Mer information om hur du använder namnområdet finns i System.TransactionsTransaktionsbearbetning.