一時トランザクション

一時トランザクション

常にトランザクションをコミットする必要はありません。トランザクション フレームを使用すると、トランザクションをロール バックできます。これは、トランザクションの処理中にエラーがある場合に便利ですが、一時トランザクションを作成するテクニックとして直接に活用できます。

一時トランザクションを使用すると、特定の解析のタイプの場合に便利です。たとえば、開口部によって切断される前に、壁またはその他のオブジェクトからジオメトリのプロパティを抽出するアプリケーションは、Document.Delete()とともに一時トランザクションを使用する必要があります。アプリケーションが、ターゲットの要素を切断する要素を削除する場合、切断要素のジオメトリは、(ドキュメントが再生成された後に)元の状態に復元されます。

一時トランザクションを使用するには:

  1. トランザクション コンストラクタを使用してトランザクションをインスタンス化し、それに名前を割り当てます。
  2. Transaction.Start()を呼び出します
  3. ドキュメントには、一時的な変更(要素の修正、削除、または作成)を加えます
  4. ドキュメントを再生成します
  5. 目的のジオメトリとプロパティを抽出します
  6. Transaction.RollBack()を呼び出して、ドキュメントを以前の状態に復元します。

このテクニックは、SubTransactions にも適用できます。