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
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.
Consulte também
Referência
Namespace Microsoft.VisualStudio.Modeling.ExtensionEnablement