Fügt den Skriptblock der aktiven Transaktion hinzu. (Use-Transaction)
NAMEUse-TransactionÜBERSICHTFügt den Skriptblock der aktiven Transaktion hinzu.SYNTAXUse-Transaction [-TransactedScript] <scriptblock> [-UseTransaction] [<CommonParameters>]BESCHREIBUNGDas Cmdlet "Use-Transaction" fügt einer aktiven Transaktion einen Skriptblock hinzu. Dies ermöglicht die Transaktionsskripterstellung mit transaktionsfähigen Microsoft .NET Framework-Objekten. Der Skriptblock darf nur transaktionsfähige .NET Framework-Objekte enthalten, z. B. Instanzen der Microsoft.PowerShell.Commands.Management.TransactedString-Klasse. Beim Verwenden dieses Cmdlets ist der UseTransaction-Parameter erforderlich, der für die meisten Cmdlets optional ist. Das Cmdlet "Use-Transaction" gehört zu einem Satz von Cmdlets, die das Transaktionsfeature in Windows PowerShell unterstützen. Weitere Informationen finden Sie unter "about_Transactions".PARAMETER-TransactedScript <scriptblock> Gibt den Skriptblock an, der in der Transaktion ausgeführt wird. Geben Sie einen beliebigen gültigen Skriptblock in geschweiften Klammern ( { } ) ein. Dieser Parameter ist erforderlich. Erforderlich? true Position? 1 Standardwert Keiner Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -UseTransaction [<SwitchParameter>] Schließt den Befehl in die aktive Transaktion ein. Dieser Parameter ist nur gültig, wenn eine Transaktion ausgeführt wird. Weitere Informationen finden Sie unter "about_Transactions". Erforderlich? false Position? named Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".EINGABENKeiner Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.AUSGABENPSObject Use-Transaction gibt das Ergebnis der Transaktion zurück.HINWEISEMit dem Use-Transaction-Parameter wird der Befehl in die aktive Transaktion eingeschlossen. Da das Cmdlet "Use-Transaction" immer in Transaktionen verwendet wird, muss dieser Parameter jeden Use-Transaction-Befehl wirksam machen.Beispiele
BEISPIEL 1C:\PS>start-transaction C:\PS> $transactedString = New-Object Microsoft.PowerShell.Commands.Management.TransactedString C:\PS> $transactedString.Append("Hello") C:\PS> use-transaction -TransactedScript { $transactedString.Append(", World") } -UseTransaction C:\PS> $transactedString.ToString() Hello C:\PS> use-transaction -transactedScript { $transactedString.ToString() } -UseTransaction Hello, World C:\PS> complete-transaction C:\PS> $transactedString.ToString() Hello, World Beschreibung ----------- In diesem Beispiel wird die Verwendung des Cmdlets "Use-Transaction" zur Skripterstellung für ein transaktionsfähiges .NET Framework-Objekt veranschaulicht. In diesem Fall ist das Objekt ein TransactedString-Objekt. Der erste Befehl startet mit dem Cmdlet "Start-Transaction" eine Transaktion. Der zweite Befehl erstellt mit dem Befehl "New-Object" ein TransactedString-Objekt. Das Objekt wird in der Variablen "$TransactedString" gespeichert. Im dritten und vierten Befehl wird mit der Append-Methode des TransactedString-Objekts Text zum Wert von "$TransactedString" hinzugefügt. Ein Befehl ist ein Teil der Transaktion, der andere nicht. Im dritten Befehl wird die Append-Methode der in die Transaktion eingefügten Zeichenfolge verwendet, um "Hello" zum Wert von "$TransactedString" hinzuzufügen. Da der Befehl nicht Teil der Transaktion ist, wird die Änderung sofort übernommen. Im vierten Befehl wird mit dem Cmdlet "Use-Transaction" Text zur Zeichenfolge in der Transaktion hinzugefügt. Der Befehl fügt mit der Append-Methode ", World" zum Wert von "$TransactedString" hinzu. Der Befehl wird in Klammern ( {} ) eingeschlossen, um einen Skriptblock zu bilden. Der UseTransaction-Parameter ist in diesem Befehl erforderlich. Im fünften und sechsten Befehl wird mit der ToString-Methode des TransactedString-Objekts der Wert von TransactedString als Zeichenfolge angezeigt. Auch hier ist ein Befehl Teil der Transaktion, der andere nicht. Im fünften Befehl wird mit der ToString-Methode der aktuelle Wert der Variablen "$TransactedString" angezeigt. Da er kein Teil der Transaktion ist, wird nur der aktuelle Status der Zeichenfolge angezeigt. Der sechste Befehl führt mit dem Cmdlet "Use-Transaction" den gleichen Befehl in der Transaktion aus. Da der Befehl Teil der Transaktion ist, wird der aktuelle Wert der Zeichenfolge innerhalb der Transaktion angezeigt, vergleichbar mit einer Vorschau der Transaktionsänderungen. Der siebte Befehl führt mit dem Cmdlet "Complete-Transaction" einen Commit für die Transaktion aus. Der letzte Befehl zeigt mithilfe der ToString-Methode den resultierenden Wert der Variablen als Zeichenfolge an.BEISPIEL 2C:\PS>start-transaction C:\PS> $transactedString = New-Object Microsoft.PowerShell.Commands.Management.TransactedString C:\PS> $transactedString.Append("Hello") C:\PS> use-transaction -TransactedScript { $transactedString.Append(", World") } -UseTransaction C:\PS> undo-transaction C:\PS> $transactedString.ToString() Hello Beschreibung ----------- In diesem Beispiel werden die Auswirkungen veranschaulicht, wenn eine Transaktion zurückgesetzt wird, die Use-Transaction-Befehle enthält. Wie alle Befehle in einer Transaktion werden die Transaktionsänderungen beim Zurücksetzen der Transaktion verworfen, und die Daten sind unverändert. Der erste Befehl startet mit dem Cmdlet "Start-Transaction" eine Transaktion. Der zweite Befehl erstellt mit dem Befehl "New-Object" ein TransactedString-Objekt. Das Objekt wird in der Variablen "$TransactedString" gespeichert. Der dritte Befehl ist kein Teil der Transaktion und fügt mithilfe der Append-Methode "Hello" zum Wert von "$TransactedString" hinzu. Im vierten Befehl wird mit dem Cmdlet "Use-Transaction" ein anderer Befehl ausgeführt, der die Append-Methode innerhalb der Transaktion verwendet. Der Befehl fügt mit der Append-Methode ", World" zum Wert von "$TransactedString" hinzu. Der fünfte Befehl setzt die Transaktion mit dem Cmdlet "Undo-Transaction" zurück. Folglich wird ein Rollback aller innerhalb der Transaktion ausgeführten Befehle ausgeführt. Der letzte Befehl zeigt mithilfe der ToString-Methode den resultierenden Wert von "$TransactedString" als Zeichenfolge an. Die Ergebnisse zeigen, dass nur die außerhalb der Transaktion vorgenommenen Änderungen für das Objekt übernommen wurden. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=135271 (möglicherweise auf Englisch) about_Transactions Start-Transaction Get-Transaction Complete-Transaction Undo-Transaction C:\Windows>powershell get-help New-WebServiceProxy -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export