Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Groupez une série de modifications au modèle.Si toute modification échoue, vous pouvez interrompre le groupe entière, en laissant le modèle inchangé.Appelez la validation () pour compléter la transaction.Si la phase de restauration d'appels d'utilisateur, le groupe entière sera dos restaurée.
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
Function BeginTransaction ( _
description As String _
) As ILinkedUndoTransaction
ILinkedUndoTransaction BeginTransaction(
string description
)
Paramètres
- description
Type : System.String
Toute chaîne qui identifie la transaction.
Valeur de retour
Type : Microsoft.VisualStudio.Modeling.ExtensionEnablement.ILinkedUndoTransaction
La nouvelle transaction.Lorsque vos modifications sont terminées, validez ou suspend, et préparez cette transaction.
Notes
Exécutez cette opération dans l'initialiseur d'une clause d'using, vous assurer que la transaction est supprimée lorsque vous avez fini vos modifications.
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.
Exemples
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.
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Microsoft.VisualStudio.Modeling.ExtensionEnablement, espace de noms