ILinkedUndoTransaction (Interfaz)
Una transacción permite agrupar juntas operaciones en el almacén de modelos UML, de modo que si cualquiera de ellas da error, todo el grupo se revierte. Cuando la transacción se confirma, el usuario puede deshacer el grupo entero con un único comando de deshacer.
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
Public Interface ILinkedUndoTransaction _
Inherits IDisposable
public interface ILinkedUndoTransaction : IDisposable
El tipo ILinkedUndoTransaction expone los siguientes miembros.
Propiedades
Nombre | Descripción | |
---|---|---|
Id | Nombre de esta transacción que estableció BeginTransaction. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
Abort | Deshacer todos los cambios al almacén de modelo que se han producido desde que se creó la transacción.Desechar la transacción sin confirmarla tiene el mismo efecto.La anulación no revertirá los cambios realizados en otras variables de programa, o recursos externos. | |
Commit | Complete la transacción de modo que cuando se desecha, las operaciones realizadas que contiene no son deshechas. | |
Dispose | Realiza tareas definidas por la aplicación asociadas a la liberación o al restablecimiento de recursos no administrados. (Se hereda de IDisposable). |
Arriba
Comentarios
En una extensión de Visual Studio , puede recopilar un contexto de que ILinkedUndoTransaction pueda crearse como sigue:
[Import]
public ILinkedUndoContext LinkedUndoContext { get; set; }
En un método, puede crear una transacción de este contexto:
using (ILinkedUndoTransaction transaction =
LinkedUndoContext.BeginTransaction("Swap names"))
{
Operation1();
Operation2();
transaction.Commit(); // Always remember Commit()!
}
Una excepción que no se detecta en el bloque using hará que todos los cambios de modelos UML dentro de él para revertirse. Observe que esto sólo se aplica a los cambios del modelo UML, no a los cambios realizados en otras variables, bases de datos externas, archivos, etc.
Las transacciones pueden anidar.
Para obtener más información, vea Cómo: Vincular actualizaciones del modelo mediante transacciones.
Vea también
Referencia
Microsoft.VisualStudio.Modeling.ExtensionEnablement (Espacio de nombres)