Use-Transaction
Betik bloğunu etkin işleme ekler.
Syntax
Default (Varsayılan)
Use-Transaction
[-TransactedScript] <ScriptBlock>
[-UseTransaction]
[<CommonParameters>]
Description
Use-Transaction cmdlet'i 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ı örnekleri gibi işlem özellikli .NET Framework nesnelerini 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 Use-Transaction nasıl kullanılacağı gösterilmektedir. Bu durumda, nesne bir TransactedString nesnesidir.
İlk komut, işlem başlatmak için Start-Transaction cmdlet'ini kullanır.
İkinci komut New-Object komutunu kullanarak bir TransactedString nesnesi oluşturur. nesnesini $TransactedString değişkeninde depolar.
Üçüncü ve dördüncü komutlar, değerine metin eklemek için TransactedString nesnesinin $TransactedString yöntemini kullanır. Komutlardan biri işlemin bir parçasıdır. Diğer komut değildir.
Üçüncü komut, değerine Hello eklemek için işlem yapılan dizenin $TransactedString yöntemini kullanır. 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 Use-Transaction kullanır. komutu, değerine ", Dünya" eklemek için $TransactedString yöntemini kullanır. Komut, bir betik bloğu haline getirmek için küme ayraçları ({}) içine alınır.
UseTransaction parametresi bu komutta gereklidir.
Beşinci ve altıncı komutlar, TransactedString değerini dize olarak görüntülemek için TransactedString nesnesinin ToString yöntemini kullanır. 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 Use-Transaction kullanır. 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 Complete-Transaction cmdlet'ini kullanır.
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, Use-Transaction komutları içeren 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 Start-Transaction kullanır.
İkinci komut, New-Object nesnesi oluşturmak için kullanır. nesnesini $TransactedString değişkeninde depolar.
İşlemin parçası olmayan üçüncü komut, değerine "Hello" eklemek için $TransactedString yöntemini kullanır.
Dördüncü komut, işlemdeki Use-Transaction yöntemini kullanan başka bir komut çalıştırmak için kullanır. komutu, değerine ", Dünya" eklemek için $TransactedString 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 dize olarak görüntülemek için $TransactedString 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 gereklidir.
Parametre özellikleri
| Tür: | ScriptBlock |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | 0 |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | 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.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | usetx |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
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 komutu içerir.
Use-Transactioncmdlet'i her zaman işlemlerde kullanıldığından, herhangi birUse-Transactionkomutun etkili olması için bu parametre gereklidir.