Aracılığıyla paylaş


Use-Transaction

Betik bloğunu etkin işleme ekler.

Syntax

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

Description

cmdlet'i Use-Transaction etkin bir işleme bir betik bloğu ekler. Bu işlem etkinleştirilmiş Microsoft .NET Framework nesnelerini kullanarak işlem yapılmış betikler yapmanıza olanak tanır. Betik bloğu yalnızca Microsoft.PowerShell.Commands.Management.TransactedString sınıfının örnekleri gibi işlem özellikli .NET Framework nesneleri içerebilir.

Çoğu cmdlet için isteğe bağlı olan UseTransaction parametresi, bu cmdlet'i kullandığınızda gereklidir.

Use-Transaction , Windows PowerShell'deki işlemler özelliğini destekleyen bir cmdlet kümesidir. Daha fazla bilgi için bkz . about_Transactions.

Örnekler

Örnek 1: İşlem özellikli bir nesne kullanarak betik oluşturma

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

Hello

Use-Transaction -TransactedScript { $transactedString.ToString() } -UseTransaction

Hello, World

Complete-Transaction
$transactedString.ToString()

Hello, World

Bu örnekte, işlem özellikli bir .NET Framework nesnesine karşı betik oluşturmak için nasıl kullanılacağı Use-Transaction gösterilmektedir. Bu durumda, nesne bir TransactedString nesnesidir.

İlk komut bir işlem başlatmak için cmdlet'ini kullanır Start-Transaction .

İkinci komut, TransactedString nesnesi oluşturmak için New-Object komutunu kullanır. nesnesini değişkeninde $TransactedString depolar.

Üçüncü ve dördüncü komutlar, değerine $TransactedStringmetin eklemek için TransactedString nesnesinin Append yöntemini kullanır. Komutlardan biri işlemin bir parçasıdır. Diğer komut değildir.

Üçüncü komut, işlem yapılan dizenin Append yöntemini kullanarak değerine $TransactedStringHello ekler. Komut işlemin bir parçası olmadığından, değişiklik hemen uygulanır.

Dördüncü komut, işlemdeki dizeye metin eklemek için kullanır Use-Transaction . komutu, değerine $TransactedString", World" eklemek için Append yöntemini kullanır. Komut, bir betik bloğu haline getirmek için küme ayraçları ({}) içine alınır. Bu komutta UseTransaction parametresi gereklidir.

Beşinci ve altıncı komutlar TransactedString nesnesinin ToString yöntemini kullanarak TransactedString değerini dize olarak görüntüler. Bir komut da işlemin bir parçasıdır. Diğer işlem değil.

Beşinci komut, $TransactedString değişkeninin geçerli değerini görüntülemek için ToString yöntemini kullanır. İşlemin bir parçası olmadığından, dizenin yalnızca geçerli durumunu görüntüler.

Altıncı komut, işlemde aynı komutu çalıştırmak için kullanır Use-Transaction . komutu işlemin bir parçası olduğundan, işlemdeki dizenin geçerli değerini görüntüler( işlem değişikliklerinin önizlemesi gibi).

Yedinci komut, işlemi işlemek için cmdlet'ini kullanır Complete-Transaction .

Son komut, değişkenin sonuç değerini dize olarak görüntülemek için ToString yöntemini kullanır.

Örnek 2: bir işlemi geri alma

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

Hello

Bu örnek, komutları içeren Use-Transaction bir işlemi geri döndürmenin etkisini gösterir. Bir işlemdeki tüm komutlar gibi, işlem geri alındığında, yapılan değişiklikler atılır ve veriler değişmez.

İlk komut işlem başlatmak için kullanır Start-Transaction .

İkinci komut, TransactedString nesnesi oluşturmak için kullanırNew-Object. nesnesini değişkeninde $TransactedString depolar.

İşlemin parçası olmayan üçüncü komut, değerine $TransactedString"Hello" eklemek için Append yöntemini kullanır.

Dördüncü komut, işlemde Append yöntemini kullanan başka bir komutu çalıştırmak için kullanırUse-Transaction. komutu, değerine $TransactedString", World" eklemek için Append yöntemini kullanır.

Beşinci komut, işlemi geri almak için Undo-Transaction cmdlet'ini kullanır. Sonuç olarak, işlemde gerçekleştirilen tüm komutlar tersine çevrilir.

Son komut, sonuç değerini $TransactedString dize olarak görüntülemek için ToString yöntemini kullanır. Sonuçlar, nesneye yalnızca işlem dışında yapılan değişikliklerin uygulandığını gösterir.

Parametreler

-TransactedScript

İşlemde çalıştırılacak betik bloğunu belirtir. Küme ayraçları ({} içine alınmış geçerli bir betik bloğu girin. Bu parametre zorunludur.

Type:ScriptBlock
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UseTransaction

Komutunu etkin işleme ekler. Bu parametre yalnızca bir işlem devam ederken geçerlidir. Daha fazla bilgi için bkz . about_transactions.

Type:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

None

Bu cmdlet'e giriş kanalı yapamazsınız.

Çıkışlar

PSObject

Bu cmdlet, işlemin sonucunu döndürür.

Notlar

  • UseTransaction parametresi, etkin işlemdeki komutunu içerir. Use-Transaction Cmdlet her zaman işlemlerde kullanıldığından, herhangi bir Use-Transaction komutun etkili olması için bu parametre gereklidir.