The next great O/R Mapper...ADO.NET?

This morning I came across Fabrice’s post about the ADO.NET Entity Framework documents making a re-appearance on MSDN.  A couple weeks ago an initial version of the documents where published on MSDN and then promptly pulled down.  I printed the docs out before they were pulled so I had a chance to read them over.  For the most part I wasn’t that excited about what they had to say.  I should note that I read them very quickly and didn’t give them much attention.

After reading the ADO.NET Entity Framework Overview I’m pretty excited to get my hands on some bits.  It sounds like the Entity Framework that Microsoft is developing could be the next great “O/R Mapper”.  The Entity Framework is going to come with tooling which will allow developers to map their conceptual domain layer onto their relational database.  The conceptual model as well as the mapping between the model and the relational store will be stored in Xml documents that the new mapping objects within ADO.NET will use to translate between the two.  Additional tooling will be provided that will allow a set of .NET classes to be generated from the models developed.

To query data using the Entity Framework developers will use a new query syntax for Entities currently dubbed “Entity SQL”.  For those familiar with how many of the current O/R Mappers support querying think of Entity SQL as HQL, OPath (or WORM OPath), or NPath.  Entity SQL allows you to write queries using a syntax similar to SQL, however, instead of dealing with tables your dealing with your domain model entities.

When I first saw the ADO.NET Entity Framework documents they didn’t talk much about LINQ.  I’m not one who is scared by the idea of writing a query that has to join on several tables so the fact that Entity SQL removed that need didn’t get me all the excited.  What’s nice is that since the Entity Framework will have Linq to Entities we won’t need to concern ourselves with writing Entity SQL.  Linq to Entities will handle all of that for us so we’ll be able to focus on our domain logic and not worry about how we need to formulate our Entity SQL queries for the data we require. 

Still on the reading block is the second paper released to MSDN entitled “Next Generation Data Access – Making the conceptual level real”.  Unfortunetly I have some work that needs to get done before I read that one.  Regardless, the one thing that is clear is that the next 6–18 months is going to bring a lot of very interesting technologies for those of us interested in finding ways for making our business applications have a strong focus on the domain rather then the relational model.

Post a Comment

 
 
Prove you're not a spammer: 
5 + 5 =