Monday, October 19, 2009

DataObjects.Net v4.1 RC is available

Finally it's done: DataObjects.Net v4.1 Release Candidate is here.

What's new:
  • Integrated PostSharp. Consequently, now it isn't necessity to install any third-party tools at all.
  • Simplified referencing to DataObjects.Net from your own projects. No more install into GAC. Check out how to add DO4 to an existing project.
  • Oracle support. There are few issues (see this and that posts) that neither we nor other ORM vendors can handle, so we consider them as acceptable ones.
  • Versions and optimistic locking support. See "Object versions" section here.
  • Future queries and batching everywhere. See "Future queries" section here; this post shows this in action.
  • Prefetch API. This post explains how this feature works (see the comments below as well). Queries it sends aren't ideal yet, but they'll be almost perfect when we finish with  automatic fall back to IN for local collections (i.e. in a week or so). New API already improves performance of raw fetches by nearly 3 times (shortly it will be ~ 10 more times faster); multiple EntitySet access performance increase is already close to ideal.
  • Support for local collections in LINQ queries. We don't support IN optimization yet, but this is what you might expect to see on the next week or so. For now this approach is really efficient for collections containing hundreds and thousands of records.
  • Fully working persistent interfaces. Only [MaterializedView] does not work yet (this affects only on performance, but not on features).
  • Improved validation API. Now we're supporting IDataErrorInfo; validation-related classes are
    refactored to be more usable. Updated WPF sample shows this.
  • No explicit bindings to Unity and Log4Net. They can be plugged in via Xtensive.Core.IoC.ServiceLocator.
  • Lots of minor improvements and bug fixes. Check out complete list of changes for details.
We slightly updated our samples:
  • ASP.NET sample handles concurrent update checks relying on our new Entity.GetVersion() method. To test this, try to edit the same entity from two different pages.
  • WPF sample got skin and WPF validation support.
There is much better installer and integration with MSBuild:
  • No need to install PostSharp or something else.
  • No more installation into GAC, so your bin folders will contain binaries fully ready for deployment with XCopy
  • We use new way of integration with MSBuild allowing you to make a project based on DO4 fully "XCopyable" - you won't need to install DO4 to compile it on another PC.
  • There are new project templates - they're much better for beginners
  • You can copy DO4 to another PC without installer now. Just XCopy it and run Install.bat; Uninstall.bat will remove it.
Notes for v4.X users: 
  • You must modify your existing .csproj files while switching to this version.
  • We recommend you to uninstall all third-party tools installed by previous versions of DO4 before switching to v4.1. At least, we don't need any of them now.

No comments:

Post a Comment