autocad - Attributes of a C# Property Changing after Getter call -


the code below property 1 of classes

public subdmesh placeholder {         {         document doc = autodesk.autocad.applicationservices.application.documentmanager.mdiactivedocument;         database db = doc.database;         transaction tr = db.transactionmanager.starttransaction();         documentlock doclock = doc.lockdocument();          using (tr)         using (doclock)         {             return tr.getobject(idofplaceholder, openmode.forwrite) subdmesh;         }     } } 

subdmesh, class autocad's api, has property called iswriteenabled want true can make changes object. explicitly specify openmode.forwrite in getobject. however, when go make changes in next code segment

placeholder.visible = false; 

it blows up. looking @ variable after getter called reveals iswriteenabled changed true false right after object returned. how can keep writing enabled?

it seems transaction , documentlock objects responsible managing writes subdmesh. both objects disposed @ end of getter, write transaction rolled immediately.

try doing operations on subdmesh within using (tr) using (doclock) (or wrap tr , doclock in disposable class keep them alive longer).


Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -