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 | |
---|---|---|
Id | O nome da transação definida por BeginTransaction. |
Superior
Métodos
Nome | Descrição | |
---|---|---|
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. | |
Commit | Concluir a transação de modo que quando é descartado, operações executadas dentro delas não sejam desfeitas. | |
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