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 | |
---|---|---|
Id | Le nom de cette transaction définie par BeginTransaction. |
Début
Méthodes
Nom | Description | |
---|---|---|
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. | |
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. | |
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