Revit二次開發事務Transaction相關

2021-09-24 17:04:56 字數 518 閱讀 9381

transaction是用來處理revit中的有關改變模型的事務。此處提到的模型,基本上指的是一切element,注意,像line等不屬於element.

看下面的例子

sketchplane sketchplane = null;

string txt = "origin";

line line = null;

using (transaction ts = new transaction(doc, "test"))

taskdialog.show("tips", txt);

taskdialog.show("tips", line.length.tostring());

事務中,最後rollback回滾了,所以對模型所做的改變被取消了,sketchplane繼承自element,因此sketchplane 並未建立成功。

而line和txt的改變並沒有取消,即,最後

txt="changed"

line.length=1

Revit二次開發 初學

前言 由於工作需要,近期開始學習revit二次開發知識。學習的同時將學習過程與小夥伴們一起分享,希望後來的小夥伴在看到我的學習筆記的時候有所幫助。說明由於revit的版本在不斷更新中,所以我在學習revit的時候選擇了從revit自帶的幫助檔案開始學習,不同版本的revit,就看相應的help檔案。...

Revit二次開發八 事務標籤值

revit開發中,事務應用非常頻繁,所有revit api提供了使用者顯式地指定標籤值。來控制在revit的iexternalcommand中,是否使用事務,其使用的屬性為transactionmode。如下 autodesk.revit.attributes.transaction autodes...

Revit二次開發 Revit擴充套件儲存資料

revit二次開發過程中,需要將相關資訊儲存到rvt檔案中,再次開啟rvt的時候,可以通過讀取這些資訊,知道當前構件的基本狀態,或者將乙個特殊的資訊儲存到rvt檔案中,從revit2012開始引入了擴充套件儲存這個新技術,就是可以把一些資料儲存在revit中的某乙個物件上。且這個儲存操作,只能通過程...