Entity Framework and Open Source
It’s been a busy year on the Entity Framework team. A little over a year ago our team released EF4.1, which included the DbContext API and Code First support. Since then we’ve also delivered Code First Migrations. Our team is also in the final stages of wrapping up the EF5 release, which introduces enum support, spatial data types, table-valued function support and some serious performance improvements. The RTM of EF5 will be available alongside the RTM of Visual Studio 2012. The EF Designer in Visual Studio 2012 includes support for multiple diagrams per model, improvements for batch importing stored procedures and a new UI coming in the final release. We also released the EF Power Tools which previews some features we are considering for inclusion in the EF Designer.
One of the things we’ve done throughout the EF4 and EF5 development cycles has been to involve the community early as we make design decisions and solicit as much feedback as possible. Going forward with EF6 we are looking to take this to the next level by moving to an open development model.
Today the Entity Framework source code is being released under an open source license (Apache 2.0), and the code repository will be hosted on CodePlex to further increase development transparency. This will enable everyone in the community to be able to engage and provide feedback on code checkins, bug fixes, new feature development and build and test the product on a daily basis using the most up to date version of the source code and tests. Community contributions will also be welcomed, so you can help shape and build Entity Framework into an even better product. You can find all the details on the Entity Framework CodePlex Site.
EF isn’t the only product to make this move, last December the Windows Azure SDK released with a similar development model, and in March this year ASP.NET MVC, ASP.NET Web API, and ASP.NET Web Pages with Razor also became available on the ASP.NET CodePlex Site. These products have all found the open development approach to be a great way to build a tighter feedback loop with the community, resulting in better products. Our teams have been working together to keep the contribution process, source structure, etc. as simple as possible across all these products.
Same Support, Same Developers, More Investment
Very importantly – Microsoft will continue to ship official builds of Entity Framework as a fully supported Microsoft product both standalone as well as part of Visual Studio (the same as today). It will continue to be staffed by the same Microsoft developers that build it today, and will be supported through the same Microsoft support mechanisms. Our goal with today’s announcement is to increase the development feedback loop even more, allowing us to deliver an even better product.
The team is delighted to move to this more open development model. You’ll see plenty of commits coming soon as we work on some exciting new features.
The online code repository will be used to ship EF 6 and future releases, and much of the implementation of the async feature is already checked in.
Here are some of the features the team wants to tackle first for the Entity Framework 6 release. Feature specifications for these will be published shortly. You can check out the roadmap page on the CodePlex site for more details.
- Task-based async - Allowing EF to take advantage of .NET 4.5. async support with async queries, updates, etc.
- Stored Procedures & Functions in Code First - Allow mapping to stored procs and database functions using the Code First APIs.
- Custom Code First conventions - Allowing custom conventions to be written and registered with Code First.
Head over to the Entity Framework Codeplex Site to learn more and get involved. And read about the new Microsoft Open Tech Hub and some of the process changes we are making to help enable this and other collaborations with the open source community.
Entity Framework Team