Entity Framework and Open Source

The Entity Framework has advanced significantly over the last few years. A little over a year ago we released EF 4.1, which introduced the new DbContext API and EF “Code First” support.  Earlier this year we delivered EF 4.3, which provides Code First Migration support that enables developers to easily evolve database schema in a code optimized way.  And we are now in the final stages of wrapping up the EF 5 release, which adds enum support, spatial data types, table-valued function support and some significant performance and Visual Studio Tooling improvements.

One of the things the team has 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 EF 6 we are looking to take this to the next level by moving to an open development model.

The Entity Framework source code is today being released under an open source license (Apache 2.0), and the code repository is now hosted on CodePlex (using Git) 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.

Last December the Windows Azure SDKs adopted this open development model, and in March of this year I blogged about how ASP.NET MVC, ASP.NET Web API and ASP.NET Razor were also adopting this approach. These products have all found the open development approach to be a great way to build a tighter feedback loop with the community, and at the end of the day deliver even better 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 really excited to move to this more open development approach. You’ll see some exciting new features committed very soon.

Learn More

Head over to the Entity Framework Codeplex Site to learn more and get involved. Also check out the EF 6 roadmap page on the CodePlex site for more details about features that will be coming in the next major release. 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.

Hope this helps,

Scott

P.S. In addition to blogging, I use Twitter to-do quick posts and share links. My Twitter handle is: @scottgu

34 Comments

  • Really great news! I was already hoping for this to happen.

    This is a big plus in the whole NHibernate vs Ef war :-)

  • Amazing!

    ScottGu has always understood the benefits of community and sharing.

  • I love the Entity Framework and I'm very glad to see that it is still staffed, funded and driven by Microsoft and the same Microsoft developers. They've done a tremendous job and I hope to see more!

  • Awesome! Well done team!

  • Amazing Scott!!! Microsoft Rocks :-)

  • Worst thing about this development model is that big conferences are not exciting anymore. Everything is known in advance. I've watched big Java events only to find out that nothing new is announced... so boring. All the excitement will be gone from big MS dev events :(

  • Great news! Very good!

  • After making ASP.NET MVC, Web API & Razor open source, yet another milestone by Scott Guthrie on making Entity Framework open source as well! Way to go!!

  • Great news!

    Grz, Kris.

  • Strange that the "open source .net community" uses git instead of TFS ??

  • I wish Linq to SQL is open sourced.
    I find EF, even in v4, to be inferior to L2S simplicity. I'm really tired of circumventing "Expression cannot be mapped to SQL." error.
    Even simplest x.ToString() function does not work, which L2S supports since begining...

  • > The Entity Framework has advanced significantly over the last few years

    But still doesn't have 2-level caching.

  • That's awesome Scott. Any hope of getting the classic ASP.NET stuff moved over to either open source, or at least viewable and traceable/debugable in Visual Studio soon as well?

  • Good news! Can't wait to see what's next. How about System.Web?

  • Sorry, a realistic perspective here, which I may be moderated down for but it's still true.

    I know that good progress has been made, but it still inferior compared to NHibernate on all grounds. NH is just a mature, reliable and well designed product. I'd really have expected you guys to come up with something comparable considering the oodles and oodles of cash we throw at you every year.

    Some comments about EF which really kill it for me: The EF tooling, particularly metadata munging stuff and IDE integration is also just painful and the documentation is horrid. It's also pretty much impossible to switch providers thanks to the half baked vendor drivers as well.

    Looking at the code, it's slightly horrid as well - I think most of the (well thought out and proven) advice that Martin Fowler compiled on the subject has been skipped over. It's also a pain in the bottom to mock half of the functionality.

    Let's hope these issues can be sorted!

    I applaud the decision to use the Apache 2.0 license.

  • Great news, I wish they would do the same for Silverlight

  • Awesome news.

    Can you PLEASE look into open sourcing EF Power Tools Beta 2?

  • @Sean Lively - They did. It's in src/PowerTools

  • Does this mean that we should just go ahead add support ourselves for cross database SQL Server queries since Microsoft has continually refused to do so?

  • Sounds good...

  • I really appreciate for this brave movement.

  • Glad to hear it. New chapter of Learning ! Thanks Scott and Team !!!!

  • Good News Thank You !

  • I am going to have to agree with Chris Smith here. I don't want to diminish what the EF team has been trying to do, but the EF strategy doesn't make sense when you take it in the context of Open Source options already available. nHibernate is very robust, has a great extensibility model, supports all the major databases, has rich documentaion, samples and a tools ecosystem. For EF to be a viable alternative it has to at least be on par with all that. I would rather see MSFT throw their weight and $ behind an established Open Source option rather than fragmenting and confusing the community. The most valuable thing to come out of EF(IMHO) is oData and perhaps some of the metadata stadards(CSDL, etc). Why doesn't MSFT replace the EF ORM portions with nHibernate, add CSDL generation and tooling on top and then invest in making the NH option better?

  • Good News Thank You!

  • Great initiative...well done

  • Scott Gu.. Nice.. Useful Thread..

  • This in really great news. I am a die-hard fan of keeping things in the family. Each third-party library (NHibernate et al) I have to put in a project creates another support headache for me because I am the one being paid to make sure everything works.

    I've been pushing for the freedom to use EF for a while now and the features of EF 4.3 as well as 5 gives me the vital arguments I needed.

  • Thanks so much for this initiative. My company recently decided to move from .NET to an open source platform (Python, Django, Mule, etc) and selected DB2 as its database engine (MySql not considered robust enough but what if?). I personally still think that the Microsoft stack is far superior in terms of productivity but what can Microsoft do about this kind of bold move?

  • Congratulations, open sourcing such tools and libraries will push the web forward as a whole.

    I think Microsoft should embrace open source / transparent development process, it's a win-win situation for both Microsoft and the community.

  • Those version numbers (4, 5 and 6!) reminds me of Silverlight. What could possibly happen if you guys did the same for Silverlight?! What happened to it anyways?! Why all this silence?! Why not a road map page for Silverlight 6 or 7?! Why not releasing under an open source license? What's going to be the cross-platform, cross-browser, LoB, C#-enabled replacement for Silverlight? ...

  • The news in EF 5 are amazing. I am working with EF from the beginning and really appreciate very fast development! Thanks Again

  • "It will continue to be staffed by the same Microsoft developers that build it today". But would you let us know how many Microsoft developers are really working on it as of now?

  • I guess this question was asked before.
    from EF1 we got directly EF4.
    now from EF4 we'll expect EF6? why only 2 steps jump?
    I'm just curious to hear some reasons (should come from the Marketing team?)

Comments have been disabled for this content.