4

I've got to look at the ORM solution for a new ASP.NET Web App with an Oracle backend.

Has anyone had good/bad experience with using Entity Framework with Oracle?

Are there any (free preferably) alternatives?

  • possible duplicate of [Can you use Microsoft Entity Framework with Oracle?](http://stackoverflow.com/questions/82644/can-you-use-microsoft-entity-framework-with-oracle) – bmargulies Aug 29 '12 at 00:29

7 Answers7

3

Microsoft doesn't have a supported option for Oracle for the Entity Framework - all the current options are non-free 3rd party providers.

NHibernate works very well with Oracle in my experiences, as does LLBLGenPro (not free, but has a reasonably priced per-developer license for the entity mapping designer).

jspru
  • 1,018
  • 8
  • 16
  • I had a feeling MS doesn't have a supported option - the documentation mentions that EF will work against **any** datasource, but I couldn't find any specifics. Thanks very much for clearing that up. –  Jul 09 '09 at 03:56
3

During June, 2010, Oracle released a statement of direction regarding support for Microsoft ADO.NET Entity Framework:

Oracle plans to enhance Oracle Data Provider for .NET (ODP.NET) to support ADO.NET Entity Framework. Oracle database developers will be able to use Visual Studio tools and APIs that are a standard part of the ADO.NET Entity Framework.

ADO.NET Entity Framework is a client-side/middle-tier technology. As such, the Oracle’s client software and ODP.NET will integrate directly with Entity Framework to support data access with the Oracle Database.

Oracle plans on releasing a beta "Around the end of 2010" and to production in 2011.

More information can be found by downloading the Statement of Direction itself.

David North
  • 1,406
  • 2
  • 10
  • 14
1

I dont have any experience with EF but nhibernate is a very good alternative.
Have a look at the screen casts by Stephen Bohlen at summer of nhibernate for a great introduction to nhibernate.

Nathan Fisher
  • 7,961
  • 3
  • 47
  • 68
1

Both Microsoft Oracle Client and ODP.NET does not support Entity Framework and LINQ to SQL. DataDirect in their new Beta version supports Entity Framework but does not support LINQ to SQL. Devart dotConnect for Oracle supports both Entity Framework (and LINQ to Entities) and LINQ to Oracle (Oracle-specific implementation of LINQ to SQL).

Devart
  • 119,203
  • 23
  • 166
  • 186
  • Thank you. I'm always using your product. I hope, that this link will be useful - http://www.devart.com/dotconnect/oracle/. – JackD Jan 05 '11 at 17:03
1

We've had great success with Oracle 11g and Entity Framework 1.0 (Visual Studio 2008 SP1) on my current project. To bridge the gap with the out of the box functionality, I've implemented a free tool from CodePlex called the EF Oracle ODP Provider. This leverages the latest Oracle data providers and provides a wrapper to enable Entity Data Model generation. Unfortunately, it does not integrate well with the Entity Designer built into Visual Studio, so you have to run a few command line utilities to get your model stood up and maintained.

You can find out more here: http://eforacleodpprovider.codeplex.com/.

ValueCoder
  • 21
  • 4
0

Oracle now provides support for Entity Framework with its Oracle Data Access Components (ODAC) However, this is only supported for .NET 4.0+.

If you wind up with a customer like I had, who stubbornly insisted upon staying .NET 2.0/3.5, the now-free Telerik Open-Access ORM behaves very similarly to Entity Framework supports a number of databases including Oracle. Support for older versions of .NET will likely be dropped if they haven't been already, but there are versions you can surely download that provide the support.

UtopiaLtd
  • 2,520
  • 1
  • 30
  • 46
0

Support was dropped for EF6 so we had to stick to EF5 for it to be able to connect to oracle db. We ran into some issues with mapping. It would map number(5) to short by default and would throw an exception if it read above 32k. The fix caused a bunch of errors in deployment. We ended up changing the database. Avoid number(5) and number(10) data types.

I am currently shopping around for another orm with LINQ and Oracle support.

Free so far, I have found Telerik Data Access and NHibernate.

Christian Rios
  • 417
  • 5
  • 15