I have an EF4 EDM called `UnitHistoryEntities`. The database is stored in SQL Express 2012. Windows 7 64-bit.

1. I create a new context with `context = new UnitHistoryEntities()`.
2. I pass this context into a couple dialog boxes that collect a bit of information from the user. A few queries were probably performed during this.
3. Based on that input, I construct a new Unit entity with `var unit = new Unit()`, set a few properties, and add it to the context with `context.Units.AddObject(unit)`
4. I then call `context.SaveChanges()`.

The call to `SaveChanges()` never, ever returns (I've given it at least 10 minutes) and never throws an exception. If I remove the `AddObject()`, it returns without making any changes to the database, because nothing was modified.

Why does `SaveChanges()` never return? Anyone experience this phenomenon?

I am able to connect and perform queries on the database from SQL Management Studio while my program is in this condition.