using (var tr = doc.TransactionManager.StartTransaction())
{
// Let's iterate through the BlockTable, erasing the
// relevant entities from the various BlockTableRecords
var bt = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead);
foreach (var btrId in bt)
{
var btr = (BlockTableRecord)tr.GetObject(btrId, OpenMode.ForRead);
foreach (var entId in btr)
{
var ent = (Entity)tr.GetObject(entId, OpenMode.ForRead, true);
//вызов IsApplicable
_tho.IsApplicable(ent)
...
public override bool IsApplicable(RXObject overruledSubject)
{
var dt = overruledSubject as DBText;
var atrdef = dt as AttributeDefinition;
if ((atrdef != null))
{
CreateText(atrdef);/просто считываю координаты и поле tag и создаю текст
}