ILinkedUndoContext.BeginTransaction (Método)
Agrupar una serie de cambios al modelo. Si se produce algún cambio, puede anular el grupo completo y dejar el modelo sin cambios. Llame a Commit() para completar la transacción. Si el usuario llama a la fase de reversión, todo el grupo se revertirá.
Espacio de nombres: Microsoft.VisualStudio.Modeling.ExtensionEnablement
Ensamblado: Microsoft.VisualStudio.Modeling.Sdk.12.0 (en Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
Sintaxis
'Declaración
Function BeginTransaction ( _
description As String _
) As ILinkedUndoTransaction
ILinkedUndoTransaction BeginTransaction(
string description
)
Parámetros
- description
Tipo: System.String
Cualquier cadena que identifica la transacción.
Valor devuelto
Tipo: Microsoft.VisualStudio.Modeling.ExtensionEnablement.ILinkedUndoTransaction
Transacción nueva.Cuando se han completado los cambios, confirmar o anular, y desechar esta transacción.
Comentarios
Realiza esta operación en el inicializador de una cláusula de using , para garantizar que la transacción está desechada cuando termine los cambios.
Una excepción que no se detecta en el bloque de using hará todos los cambios del modelo UML dentro de él para revertirse. Observe que solo se aplica a los cambios del modelo UML, no a los cambios realizados en otras variables, bases de datos externas, archivos, y así sucesivamente.
Las transacciones se pueden anidar.
Para obtener más información, vea Cómo: Vincular actualizaciones del modelo mediante transacciones.
Ejemplos
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.
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
Microsoft.VisualStudio.Modeling.ExtensionEnablement (Espacio de nombres)