Compartir a través de


ILinkedUndoTransaction (Interfaz)

Una transacción permite agrupar juntas operaciones en el almacén de modelos UML, de modo que si cualquiera de ellos falla, el grupo de conjunto se revierten.Después de que la transacción confirmada, puede deshacer el grupo entera con un único comando deshacer.

Espacio de nombres:  Microsoft.VisualStudio.Modeling.ExtensionEnablement
Ensamblado:  Microsoft.VisualStudio.Modeling.Sdk.11.0 (en Microsoft.VisualStudio.Modeling.Sdk.11.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
Propiedad pública Id el nombre de este conjunto de transacciones por BeginTransaction.

Arriba

Métodos

  Nombre Descripción
Método público Abort Deshacer todos los cambios al almacén de que se han producido desde que la transacción se creó.Eliminar la transacción sin confiar tiene el mismo efecto.El anulación no deshacer los cambios realizados a otras variables de programa, o recursos externos.
Método público Commit Complete la transacción de modo que cuando se elimina, las operaciones realizadas que contiene no son deshechas.
Método público 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 obtener un contexto de que ILinkedUndoTransaction puedan crear 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 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.

Vea también

Referencia

Microsoft.VisualStudio.Modeling.ExtensionEnablement (Espacio de nombres)