Megosztás a következőn keresztül:


Use-Transaction

Hozzáadja a szkriptblokkot az aktív tranzakcióhoz.

Syntax

Default (Alapértelmezett)

Use-Transaction
    [-TransactedScript] <ScriptBlock>
    [-UseTransaction]
    [<CommonParameters>]

Description

A Use-Transaction parancsmag egy szkriptblokkot ad hozzá egy aktív tranzakcióhoz. Így tranzakcióalapú Microsoft .NET-keretrendszer-objektumokkal hajthat végre tranzakciós szkripteket. A szkriptblokk csak tranzakcióbarát .NET-keretrendszerobjektumokat tartalmazhat, például a Microsoft.PowerShell.Commands.Management.TransactedString osztály példányait.

A parancsmag használatakor a UseTransaction paraméterre van szükség, amely a legtöbb parancsmag esetében nem kötelező.

Use-Transaction a Windows PowerShell tranzakciós funkcióját támogató parancsmagok egyike. További információ: about_Transactions.

Példák

1. példa: Szkript tranzakcióbarát objektum használatával

PS C:\> Start-Transaction
PS C:\> $transactedString = New-Object Microsoft.PowerShell.Commands.Management.TransactedString
PS C:\> $transactedString.Append("Hello")
PS C:\> Use-Transaction -TransactedScript { $transactedString.Append(", World") } -UseTransaction
PS C:\> $transactedString.ToString()
Hello
PS C:\> Use-Transaction -TransactedScript { $transactedString.ToString() } -UseTransaction
Hello, World
PS C:\> Complete-Transaction
PS C:\> $transactedString.ToString()
Hello, World

Ez a példa bemutatja, hogyan használhatja a Use-Transaction egy tranzakcióbarát .NET-keretrendszer-objektumon futó szkriptet. Ebben az esetben az objektum egy TransactedString objektum.

Az első parancs a Start-Transaction parancsmaggal indít el egy tranzakciót.

A második parancs a New-Object paranccsal hoz létre egy TransactedString objektumot. Az objektumot a $TransactedString változóban tárolja.

A harmadik és a negyedik parancs egyaránt a TransactedString objektum Append metódusát használja, hogy szöveget adjon hozzá a $TransactedString értékéhez. Az egyik parancs a tranzakció része. A másik parancs nem.

A harmadik parancs az átjátszott sztring Append metódusát használja a Hello $TransactedString értékének hozzáadásához. Mivel a parancs nem része a tranzakciónak, a rendszer azonnal alkalmazza a módosítást.

A negyedik parancs Use-Transaction használatával ad hozzá szöveget a tranzakció sztringéhez. A parancs a Append metódust használja a ", World" $TransactedString értékéhez való hozzáadásához. A parancs zárójelek közé van zárva ({}), hogy szkriptblokk legyen. Ebben a parancsban a UseTransaction paraméter szükséges.

Az ötödik és hatodik parancs a TransactedString objektum ToString metódusával jeleníti meg a TransactedString értékét sztringként. Ismét egy parancs a tranzakció része. A másik tranzakció nem.

Az ötödik parancs a ToString metódust használja a $TransactedString változó aktuális értékének megjelenítéséhez. Mivel nem része a tranzakciónak, csak a sztring aktuális állapotát jeleníti meg.

A hatodik parancs a Use-Transaction használatával futtatja ugyanazt a parancsot a tranzakcióban. Mivel a parancs a tranzakció része, a tranzakció sztringjének aktuális értékét jeleníti meg, hasonlóan a tranzakció változásainak előnézetéhez.

A hetedik parancs a Complete-Transaction parancsmaggal véglegesíti a tranzakciót.

Az utolsó parancs a ToString metódust használja a változó eredményül kapott értékének sztringként való megjelenítéséhez.

2. példa: Tranzakció visszaállítása

PS C:\> Start-Transaction
PS C:\> $transactedString = New-Object Microsoft.PowerShell.Commands.Management.TransactedString
PS C:\> $transactedString.Append("Hello")
PS C:\> Use-Transaction -TransactedScript { $transactedString.Append(", World") } -UseTransaction
PS C:\> Undo-Transaction
PS C:\> $transactedString.ToString()
Hello

Ez a példa egy Use-Transaction parancsokat tartalmazó tranzakció visszaállításának hatását mutatja be. A tranzakció összes parancsához hasonlóan a tranzakció visszaállításakor a rendszer elveti a végrehajtott módosításokat, és az adatok változatlanok maradnak.

Az első parancs Start-Transaction használatával indít el egy tranzakciót.

A második parancs New-Object használatával hoz létre TransactedString objektumot. Az objektumot a $TransactedString változóban tárolja.

A harmadik parancs, amely nem része a tranzakciónak, a Append metódus használatával adja hozzá a "Hello" értéket a $TransactedString értékéhez.

A negyedik parancs a Use-Transaction használatával futtat egy másik parancsot, amely a Hozzáfűzés metódust használja a tranzakcióban. A parancs a Append metódust használja a ", World" $TransactedString értékéhez való hozzáadásához.

Az ötödik parancs a Undo-Transaction parancsmaggal visszaállítja a tranzakciót. Ennek eredményeképpen a tranzakcióban végrehajtott összes parancs vissza lesz fordítva.

Az utolsó parancs a ToString metódussal jeleníti meg a $TransactedString eredményül kapott értékét sztringként. Az eredmények azt mutatják, hogy csak a tranzakción kívül végrehajtott módosítások lettek alkalmazva az objektumra.

Paraméterek

-TransactedScript

Megadja a tranzakcióban futtatott szkriptblokkot. Adja meg a kapcsos zárójelek közé zárt tetszőleges érvényes szkriptblokkot ( { } ). Ez a paraméter kötelező.

Paramétertulajdonságok

Típus:ScriptBlock
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-UseTransaction

Tartalmazza a parancsot az aktív tranzakcióban. Ez a paraméter csak akkor érvényes, ha egy tranzakció folyamatban van. További információ: about_Transactions.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:usetx

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

None

Ehhez a parancsmaghoz nem csövezhet be bemenetet.

Kimenetek

PSObject

Ez a parancsmag a tranzakció eredményét adja vissza.

Jegyzetek

  • A UseTransaction paraméter tartalmazza az aktív tranzakció parancsát. Mivel a Use-Transaction parancsmagot mindig a tranzakciókban használják, ez a paraméter szükséges ahhoz, hogy minden Use-Transaction parancs érvényes legyen.