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 | |
---|---|---|
Id | el nombre de este conjunto de transacciones por BeginTransaction. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
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. | |
Commit | Complete la transacción de modo que cuando se elimina, 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 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)