Revit:Transaction事务

事先说明,由于本人是刚接触Revit,所有知识点,都是我自己一边研究一边写的。所以,可能是有错误的,若有错误,还望指正和海涵。

 

由于我没有Revit事务的原代码,所以里面是怎么实现事务的我也不知道。

但从Revit事务的构造函数来看:

public Transaction(Document document);
public Transaction(Document document, string name);

 

我们能很明确的看到,他的事务,是针对到和具体的某个Document级别的,所以什么UIDocument、UIApplication等,是无法用到他内置的这个事务里面的。

他的事务方式通过Autodesk.Revit.Attributes.TransactionAttribute来指定,有2种,一种是Manual,一种是ReadOnly。

 

具体的用法跟microsoft的分布式事务差不多,很简单的Start、Commit、RollBack。

 

在Revit的SDK示例中,操作Document的时候 ,都会启动事务。那我们跟着弄就好。

posted @ 2020-07-21 10:30    阅读(405)  评论(0编辑  收藏  举报