Freigeben über


ILinkedUndoTransaction-Schnittstelle

Eine Transaktion erlaubt Ihnen, Vorgänge im UML-Modellspeicher zusammen zu gruppieren, damit die gesamte Gruppe zurückgesetzt wird, wenn einer davon scheitert. Nachdem ein Commit für die Transaktion ausgeführt ist, kann der Benutzer die ganze Gruppe mit einem einzigen Rückgängig-Befehl rückgängig gemacht werden.

Namespace:  Microsoft.VisualStudio.Modeling.ExtensionEnablement
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)

Syntax

'Declaration
Public Interface ILinkedUndoTransaction _
    Inherits IDisposable
public interface ILinkedUndoTransaction : IDisposable

Der ILinkedUndoTransaction-Typ macht die folgenden Member verfügbar.

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft Id Der Name dieser durch BeginTransaction festgelgten Transaktion.

Zum Seitenanfang

Methoden

  Name Beschreibung
Öffentliche Methode Abort Machen Sie alle Änderungen am Modellspeicher rückgängig, die vorgenommen wurden, seitdem die Transaktion erstellt wurde.Das Freigeben der Transaktion, ohne sie zu übernehmen, hat die gleiche Wirkung.Abbruch macht Änderungen an anderen Programmvariablen oder externe Ressourcen nicht rückgängig.
Öffentliche Methode Commit Schließen Sie die Transaktion ab, die, wenn sie verworfen wird, verursacht, dass die Vorgänge nicht rückgängig gemacht werden.
Öffentliche Methode Dispose Führt anwendungsspezifische Aufgaben aus, die mit dem Freigeben, Zurückgeben oder Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen. (Von IDisposable geerbt.)

Zum Seitenanfang

Hinweise

In einer Erweiterung Visual Studio können Sie einen Kontext abrufen, von dem ILinkedUndoTransaction erstellt werden, wie folgt:

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

In einer Methode können Sie eine Transaktion von diesem Kontext erstellen:

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

Eine Ausnahme, die innerhalb des Blocks using abgefangen wird, wird UML-Modelländerungen alle darin zurückzusetzen. Beachten Sie, dass dies nur auf Änderungen im UML-Modell gilt, und nicht auf Änderungen, die anderen Variablen, externe Datenbanken, Dateien vorgenommen wurden, u. a.

Transaktionen können geschachtelt werden.

Weitere Informationen finden Sie unter Gewusst wie: Verknüpfen von Modellaktualisierungen mithilfe von Transaktionen.

Siehe auch

Referenz

Microsoft.VisualStudio.Modeling.ExtensionEnablement-Namespace