Partilhar via


Interface ILinkedUndoTransaction

Uma transação permite que você agrupe juntos operações no armazenamento de modelo de UML, para que se qualquer uma delass falham, o grupo toda ser revertido. Após a transação é confirmada, o usuário pode desfazer o grupo inteiro com um único desfaz o comando.

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

Sintaxe

'Declaração
Public Interface ILinkedUndoTransaction _
    Inherits IDisposable
public interface ILinkedUndoTransaction : IDisposable

O tipo ILinkedUndoTransaction expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública Id O nome da transação definida por BeginTransaction.

Superior

Métodos

  Nome Descrição
Método público Abort Desfazer as alterações para o armazenamento modelo ocorridas desde a transação foi criada.Descartar a transação sem comprometê-la tem o mesmo efeito.O abort não desfará alterações a outras variáveis do programa, ou recursos externos.
Método público Commit Concluir a transação de modo que quando é descartado, operações executadas dentro delas não sejam desfeitas.
Método público Dispose Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados. (Herdado de IDisposable.)

Superior

Comentários

Em uma extensão de Visual Studio , você pode obter um contexto deILinkedUndoTransaction que pode ser criado como segue:

[Import]
public ILinkedUndoContext LinkedUndoContext { get; set; }

Em um método, você pode criar uma transação deste contexto:

using (ILinkedUndoTransaction transaction =
              LinkedUndoContext.BeginTransaction("Swap names"))
{ 
    Operation1();
    Operation2();
    transaction.Commit(); // Always remember Commit()!
}

Uma exceção que não é detectada dentro do bloco de using que todas as alterações do modelo de UML dentro delas para ser revertida. Observe que isso se aplica somente a alterações no modelo de UML, e não a alterações que foram feitas para 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 vincular atualizações de modelo usando transações.

Consulte também

Referência

Namespace Microsoft.VisualStudio.Modeling.ExtensionEnablement