I have a .NET DLL that a gathers object ids of entities grouped within bounding boxes and then WBlocks each group of entities to individual dwg files. I'm getting an pretty consistent crash when transaction.commit gets called. If I comment out the wblock call (sourceDatabase.Wblock(targetDatabase, objectIdColl, dwgBasePoint, DuplicateRecordCloning.Ignore)) I never get the crash.
Anyone seen anything like this before? Any suggestions?
I also see this sometimes as well.
System.InvalidOperationException: Operation is not valid due to the current state of the object.
at Autodesk.AutoCAD.DatabaseServices.Transaction.CheckTopTransaction()
at Autodesk.AutoCAD.DatabaseServices.Transaction.DeleteUnmanagedObject()
...
@Anonymous wrote:I also see this sometimes as well.
System.InvalidOperationException: Operation is not valid due to the current state of the object.
at Autodesk.AutoCAD.DatabaseServices.Transaction.CheckTopTransaction()
at Autodesk.AutoCAD.DatabaseServices.Transaction.DeleteUnmanagedObject()...
This error happens when you use an API that requires an active transaction, with the most-likely culprits being ObjectId.GetObject() or TransactionManager.GetObject()
The problem is in your code, and I suspect the other problem is as well.
If you need help tracking down the source of the errors, you're going to have to show the code where it happens. Otherwise, you will have to run your code in the debugger and it should break on the line when the exception occurs.