In contrast to what Dinesh Kulkarni, Program Manager said at the MSDN webcast, Visual Studio .NET 2005 does contain a newer build of ObjectSpaces. And that build contains many new features.
Here are some highlights of what I saw in the half hour that I had time to look into it:
- Support for Generics: now you’ll be able to get all the Generic goodness combined with OS. For example, the ObjectReader and ObjectSet will return your flavor of objects as strong typed references instead of System.Object references. No longer will you need to call:
ObjectReader reader = os.GetObjectReader(typeof(Customer), ““, ““);
This will now become:
ObjectReader<Customer> reader = os.GetObjectReader<Customer>(““, ““);
Every object returned from the reader will be of type Customer. Life is good!
- Introduction of a PagedObjectReader.
- New functionality in ObjectSpace class, such as persisting and resync some or all of the objects
- The ObjectManager replaces the ObjectContext and also takes some of the functionality previously found in the ObjectSet en ObjectSpace classes. You can now accept or reject persisted changes, end the tracking of objects.
- CompiledQuery now can be used in combination with an OPathParameterTable of OPathParameterCollection
- New or expanded enumerations such as RetrieveOption (DefaultSpan, ImmediateLoad and LoadOnDemand) and Depth (CompositionTree, NoTraversal, ObjectGraph).
- When starting tracking, objects can be marked with the ObjectState instead of the InitialState. This means that you could mark it as modified or deleted, but I haven’t figured out what legal values are. Same goes for an extra parameter that you can specify called “path“
There’s much more to discover, but I suggest you go right ahead and download the VS.NET 2005 Community Technology Preview of March now. Installation went pretty fast by the way. And don’t get your hopes up on the documentation. There’s even less than in the PDC bits. Lots of puzzling to do!
To be continued.