A list of Entity Framework providers for various databases

Robert Koritnik picture Robert Koritnik · Dec 8, 2009 · Viewed 48.3k times · Source

Which providers are there and your experience using them

I would like to know about all possible native .NET Framework Entity Framework providers that are out there as well as their limitations compared to the default LINQ2Entities (from MS for MS SQL). If there are more for the same database even better. Tell me and I'll be updating this post with this list.

Feel free to add additional providers directly into this post or provide an answer and others (including me) will add it to the list.

Entity Framework 1

Microsoft SQL Server Standard/Enterprise/Express

Microsoft SQL Server CE (Compact Edition)

  • Any provider?

MySQL

  • MySQL Connector (since version 6.0) - I've read about issues when using Skip(), Take() and Sort() in the same expression tree - everyone welcome to input their experience/knowledge regarding this.

    Note: MySQL Connector/NET Visual Studio Integration is not supported in the Express Editions of Visual Studio, meaning you won't be able to view MySQL databases in the Database explorer window or add a MySQL data source via Visual Studio wizard dialog boxes. Some users may find that this limits their ability to use Entity Framework and MySQL within Visual Studio Express).

  • Devart dotConnect for MySQL - similar issues to MySql's connector as I've read and both try to blame MS for it [these issues are supposed to be solved]

SQLite

PostgreSQL

Oracle

DB2

Sybase

Informix

Firebird

Provider Wrappers

Entity Framework 4 (beta)

Microsoft SQL Server

  • Microsoft's Linq to Entities 4 - shipped with .net 4.0 and Visual Studio 2010; so far the only provider for EF4

MySQL

SQLite

PostgreSQL

Oracle

Microsoft SQL Server Analysis Services (SSAS)

Answer

RepDetec picture RepDetec · Dec 9, 2009

DB2 will work, but if you want to use some of the out-of-the-box .NET features that we all take for granted (think membership and role providers), you will have quite a bit of work on your hands. DB2 doesn't really do well with Stored Procedures, so you are also looking at a lot of parameterized inline SQL.

I also had some performance issues with the provider from IBM. There is another provider available from a company called DataDirect. It looks to be more performant, but it will cost you. For something like an external facing website, where speed is important, the cost probably will not be an issue.

I am sure that DB2 is a great system if you are building on another platform, but it wasn’t really designed to play nice with .NET. Unless you are already married to DB2, I would look elsewhere.