Compartir a través de


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

Vea también

Referencia

ILinkedUndoContext Interfaz

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