共用方式為


ILinkedUndoContext.BeginTransaction 方法

將一系列變更群組到模型中。 如果任何變更失敗,您可以中止整個群組,模型會保持不變。 呼叫 Commit() 以完成異動。 如果使用者呼叫復原,將會回復整個群組。

命名空間:  Microsoft.VisualStudio.Modeling.ExtensionEnablement
組件:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (在 Microsoft.VisualStudio.Modeling.Sdk.12.0.dll 中)

語法

'宣告
Function BeginTransaction ( _
    description As String _
) As ILinkedUndoTransaction
ILinkedUndoTransaction BeginTransaction(
    string description
)

參數

  • description
    類型:System.String
    識別異動的任何字串。

傳回值

類型:Microsoft.VisualStudio.Modeling.ExtensionEnablement.ILinkedUndoTransaction
新的交易。您的變更完成後,認可或中止和處置此交易。

備註

執行這項作業在 using 子句的初始設定式,確保這種交易已處置,當您完成變更時。

沒有攔截到 using 區塊中的例外狀況會造成在其中的所有 UML 模型變更復原。 請注意這只適用於 UML 模型中的變更,並不會對其他變數的變更,外部資料庫,檔案,依此類推。

交易可以是巢狀。

如需詳細資訊,請參閱如何:使用異動連結模型更新

範例

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.
}

.NET Framework 安全性

請參閱

參考

ILinkedUndoContext 介面

Microsoft.VisualStudio.Modeling.ExtensionEnablement 命名空間