(疑问)CAD中tran.GetObject()参数

事务transaction的实例tran,方法GetObject()有三个重载函数,返回值都是DBObject,即任意的数据库对象,第一个参数ObjectId id,有多种值,每一种代表什么意思?什么情况使用?

比如下面两种情况,都是获取BlockTableRecord块表记录,但是参数不同,分别获取的是哪里的块表记录呢?

BlockTable blockTable = tran.GetObject(HostApplicationServices.WorkingDatabase.BlockTableId, OpenMode.ForWrite);
BlockTableRecord blkTblRecord = tran.GetObject(HostApplicationServices.WorkingDatabase.CurrentSpaceId, OpenMode.ForWrite);

 

BlockTable blockTable = (BlockTable)tran.GetObject(HostApplicationServices.WorkingDatabase.BlockTableId, OpenMode.ForRead);
BlockTableRecord blkTblRecord = (BlockTableRecord)tran.GetObject(blockTable[BlockTableRecord.ModelSpace], OpenMode.ForRead);

你可能感兴趣的:(数据库)