Redmond Makes Progress on Entity Framework
Entity Framework beta 3 offers new features, bug fixes and major performance enhancements, but no Oracle support.
Microsoft released Entity Framework beta 3 on Dec. 6; it's a major upgrade
with significant performance enhancements. As the technology takes shape, Microsoft is lining up supporters. The company "officially" announced the third-party database vendors and ADO.NET 2.0 data providers that have agreed to support the framework. Oracle Corp. is not among them.
The ADO.NET Entity Framework is the latest Microsoft technology to support the RTM versions of .NET 3.5 and Visual Studio 2008. The object-relational mapping framework provides the data access APIs for .NET 3.5. (Beta 3 follows the August beta 2 release, which is built on .NET 3.5 beta 2.)
Coming into Shape
Beta 3 also provides new features, bug fixes and major performance enhancements.
"We've got faster view generation, some simpler generated SQL. We've taken a lot of feedback from customers in some of these areas," says Elisa Flasko, program manager for the data programmability team at Microsoft. Beta 3 offers more similarities to SQL; for example, partial methods in code generation for certain property-changed events.
"The changes have mostly been around mapping and in the Entity Data Model of the Entity Framework itself," she says. "As far as the LINQ implementation [LINQ to Entities], it has mostly been fit and finish." However, users can now do compiled LINQ query for better performance.
Roger Jennings, principal consultant at Oakleaf Systems, who's using beta 3, calls it a major update. "With beta 3, it's coming into shape," he says. "There are substantial performance improvements -- that was one of the problems. Almost everything involved with queries is faster now."
Developers who have been using beta 2 should note that there are breaking changes in beta 3.
"Most of them are not huge code changes," asserts Flasko.
New Tools CTP
Beta 3 requires the Entity Framework Tools December 2007 community technology preview (CTP), which was also posted Dec. 6 and is available for download on MSDN. (This is the second CTP; the first preview was released in August.)
In the latest tooling preview, the Entity Data Model Designer adds the ability to use stored procedures as an alternative to dynamic SQL for populating entities.
"We've had the ability for a while in the runtime to use stored procedures in SQL Server behind the Entity Framework rather than dynamic SQL," explains Flasko. "Now the tooling experience will allow you to use the tooling rather than having to code by hand to hook those two things up."
The Entity Framework is built on ADO.NET, a connection technology that allows .NET users to access third-party databases. The framework provides a conceptual model for database schema that makes it easier for developers to program against business logic, according to Microsoft.
ADO.NET 2.0 data providers that have committed to support the ADO.NET Entity Framework include Core Lab, DataDirect Technologies, IBM Corp., MySQL AB and Sybase Inc., among others. These companies are planning to extend their data providers to support the framework three months after it RTMs, or by year-end.
Oracle is not on that list. "We've been working with them, but at this point what we have are the providers that are included in the press release," Flasko says.
Alex Keh, product manager for the Oracle Data Provider (ODP.NET), confirms that in an e-mail: "Oracle is evaluating Entity Framework, but we have not announced any plans to support the technology just yet."
Even without Oracle's support, RDMS users will have other options. Microsoft's David Sceppa, a program manager on the ADO.NET team, notes: "[W]e're also engaged with other provider writers who support Oracle connectivity to ensure that customers working with Oracle back-ends will be able to use the Entity Framework to interact with their data, even if Oracle is a little slow to enhance their provider."
At press time, Microsoft was still finalizing the ADO.NET Entity Framework sample provider for Entity Framework beta 3. Sceppa expected to post it to the Web in mid-December.
Microsoft plans to release the ADO.NET Entity Framework and the ASP.NET 3.5 Extensions, which will include the REST-based data services model (code-named "Astoria"), in the same time frame. All of these technologies are expected in the first half of 2008, but the actual productization has not been finalized.
"We haven't locked down the ship vehicle for ASP.NET 3.5 Extensions," Flasko explains.
The first CTP of ASP.NET 3.5 Extensions -- posted last month -- offers the first public preview of the model view controller (MVC) option, support for REST, additional AJAX functionality and Dynamic Data Controls. The data controls, which include a scaffolding framework, will be provided by SubSonic, an open source .NET toolset, although that integration was not available in the December ASP.NET 3.5 Extensions CTP.
Kathleen Richards is the editor of RedDevNews.com and executive editor of Visual Studio Magazine.