.NET

Reply
Active Contributor
jimmie_fulton
Posts: 44
Registered: ‎04-06-2005
Message 1 of 1 (229 Views)

TransactionManager.StartTransation() causes null object error?

229 Views, 0 Replies
02-22-2006 11:43 AM
I have an event handler connected to the Database.ObjectAppended to watch when a particular object type has been appended to the database. Within the event handler, it seems that the database is in such as state that I can't get a transaction to query the database with; it causes a null object exception when I call StartTransaction() on the database's TransactionManager. Any ideas why?

// ObjectEventHandler event handler
private static void Database_ObjectAppended(object sender, ObjectEventArgs e)
{
Database database = sender as Database;
PropertySet propertySet = e.DBObject as PropertySet;
if (propertySet != null && database != null)
{
ObjectId sheetnoteSetDefId = ObjectId.Null;
// *** Error happens on next line ***
using (Transaction trans = database.TransactionManager.StartTransaction())
{
using (DictionaryPropertySetDefinitions propertySetDefIds = new DictionaryPropertySetDefinitions(database))
{
foreach (ObjectId propertySetDefId in propertySetDefIds.Records)
{
PropertySetDefinition propertySetDef = (PropertySetDefinition)trans.GetObject(propertySetDefId, OpenMode.ForRead);
if (propertySetDef.Name.ToLower() == "sheetnote_data")
{
sheetnoteSetDefId = propertySetDef.ObjectId;
break;
}
}
}
if (propertySet.PropertySetDefinition == sheetnoteSetDefId)
{
int number = (int)propertySet.GetAt(propertySet.PropertyNameToId("Number"));
string text = (string)propertySet.GetAt(propertySet.PropertyNameToId("Text"));
SheetnoteInfo sheetnoteInfo = new SheetnoteInfo(number, text);
sheetNoteControl.AddSheetnote(sheetnoteInfo);
}
}
}
}

You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.

Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Ask the Community