Partilhar via


Método ILinkedUndoContext.BeginTransaction

Agrupe uma série de alterações no modelo.Se qualquer alteração falhar, você poderá anular o grupo inteiro, deixando o modelo inalterado.Chame Commit () para concluir a transação.Se o usuário chama desfazer, todo o grupo será revertido.

Namespace:  Microsoft.VisualStudio.Modeling.ExtensionEnablement
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.11.0 (em Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)

Sintaxe

'Declaração
Function BeginTransaction ( _
    description As String _
) As ILinkedUndoTransaction
ILinkedUndoTransaction BeginTransaction(
    string description
)

Parâmetros

  • description
    Tipo: System.String
    Qualquer seqüência de caracteres que identifica a transação.

Valor de retorno

Tipo: Microsoft.VisualStudio.Modeling.ExtensionEnablement.ILinkedUndoTransaction
A nova transação.Quando as alterações forem concluídas, confirmar ou anular e descartar esta transação.

Comentários

Realizar esta operação no inicializador de um using cláusula, para garantir que a transação é descartada quando tiver terminado as alterações.

Uma exceção não detectada dentro do using bloco fará com que todas as alterações de modelo UML dentro dela serão revertidas.Observe que isso se aplica apenas às alterações no modelo UML e não para alterações que foram feitas outras variáveis, bancos de dados externos, arquivos e assim por diante.

As transações podem ser aninhadas.

Para obter mais informações, consulte Como: atualizações do modelo de Link usando transações.

Exemplos

try
{
  using (ILinkedUndoTransaction transaction =
              LinkedUndoContext.BeginTransaction("Swap names"))
  { 
    Operation1(); 
    Operation2();
    // Any exception in the preceding statements
    // will undo all of the changes in the model.
    transaction.Commit(); // Always remember Commit()!
  }
}
catch ()
{
    // If control reaches here,
    // Operation1 and Operation2 have
    // made no change to the model.
}

Segurança do .NET Framework

Consulte também

Referência

ILinkedUndoContext Interface

Namespace Microsoft.VisualStudio.Modeling.ExtensionEnablement