Freigeben über


ILinkedUndoTransaction-Schnittstelle

Eine Transaktion können Sie Vorgänge im UML-Modell speichern, damit sie ggf. zusammen zu gruppieren, scheitert die gesamte Gruppe zurücksetzt.Nachdem ein Commit für die Transaktion ausgeführt ist, kann der Benutzer die Gruppe Alle mit einem einzigen Befehl Undo Command rückgängig machen.

Namespace:  Microsoft.VisualStudio.Modeling.ExtensionEnablement
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.11.0 (in Microsoft.VisualStudio.Modeling.Sdk.11.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 Transaktion festgelegt durch BeginTransaction.

Zum Seitenanfang

Methoden

  Name Beschreibung
Öffentliche Methode Abort Machen Sie alle Änderungen am Modellspeicher, die vorgenommen wurden, seitdem die Transaktion erstellt wurde.Das Freigeben der Transaktion, ohne sie zu übernehmen, hat die gleiche Wirkung.Abbruch nicht rückgängig gemacht oder andere Änderungen an Programmvariablen externe Ressourcen.
Öffentliche Methode Commit Schließen Sie die Transaktion ab, die, wenn sie verworfen wird, die Vorgänge, die innerhalb der Ausführung nicht mehr 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 Visual Studio Erweiterung können Sie erhalten einILinkedUndoTransaction , aus dem Kontext erstellt werden kann 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 nicht innerhalb des using-Block abgefangen wird, bewirkt, dass alle Änderungen des UML-Modells darin zurückzusetzen.Beachten Sie, dass dies nur für Änderungen im UML-Modell gilt, und nicht zu den Änderungen, die an anderen Variablen, externe Datenbanken, Dateien vorgenommen wurden usw.

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