Поделиться через


Как обеспечить поддержку транзакций

В этом примере показаны основные элементы кода, которые добавляют поддержку транзакций в командлет.

Важно!

дополнительные сведения о том, как Windows PowerShell обрабатывает транзакции, см. в разделе about transactions.

Для поддержки транзакций

  1. При объявлении атрибута командлета укажите, что командлет поддерживает транзакции. если командлет поддерживает транзакции, Windows PowerShell добавляет UseTransaction параметр в командлет при запуске.

    [Cmdlet(VerbsCommunications.Send, "GreetingTx",
            SupportsTransactions=true )]
    
  2. В одном из методов обработки входных данных добавьте if блок, чтобы определить, доступна ли транзакция. Если if инструкция разрешается в true , действия в этой инструкции могут выполняться в контексте текущей транзакции.

    if (TransactionAvailable())
    {
      using (CurrentPSTransaction)
      {
        WriteObject("Hello " + name + "  from within a transaction.");
      }
    }
    

См. также

Запись командлета Windows PowerShell