Partager via


ILinkedUndoTransaction, interface

Une transaction permet pour grouper ensemble des opérations sur la banque de modèle UML, de sorte que si l'un d'entre eux échoue, le groupe entière soit dos restaurée.Après que la transaction soit validée, l'utilisateur peut annuler le groupe entière avec une commande unique de phase de restauration.

Espace de noms :  Microsoft.VisualStudio.Modeling.ExtensionEnablement
Assembly :  Microsoft.VisualStudio.Modeling.Sdk.11.0 (dans Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)

Syntaxe

'Déclaration
Public Interface ILinkedUndoTransaction _
    Inherits IDisposable
public interface ILinkedUndoTransaction : IDisposable

Le type ILinkedUndoTransaction expose les membres suivants.

Propriétés

  Nom Description
Propriété publique Id Le nom de cette transaction définie par BeginTransaction.

Début

Méthodes

  Nom Description
Méthode publique Abort Annulez toutes les modifications au magasin de modèles qui se sont produites depuis que la transaction a été créée.Préparer la transaction sans la valider a le même effet.L'arrêt n'annulera pas des modifications à d'autres variables de programme, ou des ressources externes.
Méthode publique Commit Complétez la transaction afin que lorsqu'elle est supprimée, les opérations exécutées dans elle ne soient pas annulées.
Méthode publique Dispose Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées. (Hérité de IDisposable.)

Début

Notes

Dans une extension de Visual Studio, vous pouvez obtenir un contexte dont ILinkedUndoTransaction peut être créé comme suit :

[Import]
public ILinkedUndoContext LinkedUndoContext { get; set; }

Dans une méthode, vous pouvez créer une transaction de ce contexte :

using (ILinkedUndoTransaction transaction =
              LinkedUndoContext.BeginTransaction("Swap names"))
{ 
    Operation1();
    Operation2();
    transaction.Commit(); // Always remember Commit()!
}

Une exception qui n'est pas interceptée à l'intérieur du bloc d'using provoquera toutes les modifications de modèle UML à l'intérieur de celle-ci pour être dos restaurée.Notez que cela s'applique uniquement aux modifications dans le modèle UML, et non vers les modifications apportées à d'autres variables, bases de données externes, fichiers, et ainsi de suite.

Des transactions peuvent être imbriquées.

Pour plus d'informations, consultez Comment : lier des mises à jour de modèles à l'aide de transactions.

Voir aussi

Référence

Microsoft.VisualStudio.Modeling.ExtensionEnablement, espace de noms