Get-Transaction
Lekéri az aktuális (aktív) tranzakciót.
Syntax
Default (Alapértelmezett)
Get-Transaction
Description
A Get-Transaction parancsmag egy objektumot kap, amely a munkamenet aktuális tranzakcióját jelöli.
Ez a parancsmag soha nem ad vissza egynél több objektumot, mivel egyszerre csak egy tranzakció aktív. Ha egy vagy több független tranzakciót indít el (a Start-TransactionFüggetlen paraméterével), a legutóbb elindított tranzakció aktív, és ez az a tranzakció, amelyet Get-Transaction visszaad.
Amikor az összes aktív tranzakció vissza lett állítva vagy véglegesített, ez a parancsmag a munkamenetben legutóbb aktív tranzakciót jeleníti meg.
Ez a parancsmag a Windows PowerShell tranzakciós funkcióját támogató parancsmagok egyike. További információ: about_Transactions.
Példák
1. példa: Az aktuális tranzakció lekérése
PS C:\> Start-Transaction
PS C:\> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Ez a parancs a Get-Transaction parancsmagot használja az aktuális tranzakció lekéréséhez.
2. példa: A tranzakcióobjektum tulajdonságainak és metódusainak megjelenítése
PS C:\> Get-Transaction | Get-Member
Name MemberType Definition
---- ---------- ----------
Dispose Method System.Void Dispose(), System.Void Dispose(Boolean disposing)
Equals Method System.Boolean Equals(Object obj)
GetHashCode Method System.Int32 GetHashCode()
GetType Method System.Type GetType()
ToString Method System.String ToString()
IsCommitted Property System.Boolean IsCommitted {get;}
IsRolledBack Property System.Boolean IsRolledBack {get;}
RollbackPreference Property System.Management.Automation.RollbackSeverity RollbackPreference {get;}
SubscriberCount Property System.Int32 SubscriberCount {get;set;}
Ez a parancs a Get-Member parancsmaggal jeleníti meg a tranzakcióobjektum tulajdonságait és metódusait.
3. példa: Egy visszaállított tranzakció tulajdonságértékeinek megjelenítése
PS C:\> cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Undo-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Ez a parancs egy visszaállított tranzakció tranzakcióobjektumának tulajdonságértékét jeleníti meg.
4. példa: Egy véglegesített tranzakció tulajdonságértékeinek megjelenítése
PS C:\> cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Ez a parancs egy tranzakcióobjektum tulajdonságértékét jeleníti meg egy véglegesített tranzakcióhoz.
5. példa: Tranzakció indítása egy másik folyamatban
PS C:\> cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany2 -UseTransaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 2 Active
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Ez a példa azt mutatja be, hogy milyen hatással van a tranzakció objektumára egy tranzakció indítása, miközben egy másik tranzakció folyamatban van. Ez általában akkor fordul elő, ha egy tranzakciót futtató szkript tartalmaz egy függvényt, vagy meghív egy másik teljes tranzakciót tartalmazó szkriptet.
Ha a második Start-Transaction parancs nem tartalmazza a Független paramétert, Start-Transaction nem hoz létre új tranzakciót. Ehelyett hozzáad egy második előfizetőt az eredeti tranzakcióhoz.
Az első Start-Transaction parancs elindítja a tranzakciót. A UseTransaction paraméterrel rendelkező New-Item parancs a tranzakció része.
Egy második Start-Transaction parancs hozzáad egy előfizetőt a tranzakcióhoz. A következő New-Item parancs is része a tranzakciónak.
Az első Get-Transaction parancs megjeleníti a több-előfizetős tranzakciót. Figyelje meg, hogy az előfizetők száma 2.
Az első Complete-Transaction parancs nem véglegesíti a tranzakciót, de 1-re csökkenti az előfizetők számát.
A második Complete-Transaction parancs véglegesíti a tranzakciót.
6. példa: Független tranzakció indítása egy másik folyamatban
PS C:\>
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
HKLM:\SOFTWARE> Start-Transaction -Independent
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
Ez a példa egy független tranzakció indításának tranzakcióobjektumra gyakorolt hatását mutatja be, miközben egy másik tranzakció folyamatban van.
Az első Start-Transaction parancs elindítja a tranzakciót. A tranzakció része egy New-Item parancs a UseTransaction paraméterrel.
Egy második Start-Transaction parancs hozzáad egy előfizetőt a tranzakcióhoz. A következő New-Item parancs is része a tranzakciónak.
Az első Get-Transaction parancs megjeleníti a több-előfizetős tranzakciót. Vegye figyelembe, hogy az előfizetők száma 2.
A Complete-Transaction parancs 1-re csökkenti az előfizetők számát, de nem véglegesíti a tranzakciót.
A második Complete-Transaction parancs véglegesíti a tranzakciót.
Bevitelek
None
Ehhez a parancsmaghoz nem lehet objektumokat csövezni.
Kimenetek
PSTransaction
Ez a parancsmag egy objektumot ad vissza, amely az aktuális tranzakciót jelöli.