Entity Framework

Relevant categories: Databases, Microsoft .NET

Like it or not, relational databases are ruling our world of data, and they don't seem to be leaving soon. The mismatch between the object oriented world of applications and the relational databases has wasted the industry millions of software developer hours, and counting.

A large percentage of any database driven applications project time is spent in writing, debugging and maintaining the data access components, just to bridge this natural gap (I can hardly think of any business application without a database). A lot of effort has been put into building ORM (Object Relational Mapping) tools and code generators by various companies.

Well, at last, Microsoft is keeping up with the latest achievement of the ADO.NET team: Entity Framework.

Having access to the .NET language compilers, Visual Studio and other teams in the .NET productivity groups, you can imagine the level of integrity they can achieve with the rest of the .NET framework and development tools. In simple words, Entity Framework brings the relational model home to your application layer, well, conceptually. The dirty work is performed behind the scenes by the run-time, the way Microsoft usually does.

Entity Framework intends to raise the abstraction level for data programming. This removes the impedance mismatch between data models and languages that application developers would otherwise have to deal with.

Being based on LINQ (the innovative Language-Integrated Query technology), Entity Framework is a new member of the ADO.NET family of technologies and is an alternative to traditional Datasets and the recent Linq-To-SQL.


Links: