实体框架和Oracle

时间:2009-07-09 02:58:36

标签: oracle entity-framework orm

我必须查看带有Oracle后端的新ASP.NET Web App的ORM解决方案。

有没有人在使用Entity Framework和Oracle时有好/坏经验?

是否有(最好的免费)替代品?

7 个答案:

答案 0 :(得分:3)

Microsoft没有针对实体框架的Oracle支持选项 - 所有当前选项都是非免费的第三方提供商。

根据我的经验,NHibernate与Oracle的合作非常好,LLBLGenPro也是如此(不是免费的,但实体地图设计师拥有价格合理的每个开发人员许可证)。

答案 1 :(得分:3)

2010年6月,Oracle发布了关于支持Microsoft ADO.NET Entity Framework的指示声明:

  

Oracle计划增强用于.NET的Oracle数据提供程序(ODP.NET)以支持ADO.NET实体   框架。 Oracle数据库开发人员将能够使用作为ADO.NET实体框架标准部分的Visual Studio工具和API。

     

ADO.NET Entity Framework是一种客户端/中间层技术。因此,Oracle的客户端软件和ODP.NET将直接与Entity Framework集成,以支持使用Oracle数据库进行数据访问。

甲骨文计划在2010年底发布测试版并在2011年投放生产。

可以通过下载Statement of Direction本身找到更多信息。

答案 2 :(得分:1)

我对EF没有任何经验,但是nhibernate是一个非常好的选择 看看Stephen Bohlen在summer of nhibernate的屏幕演示中对nhibernate的一个很好的介绍。

答案 3 :(得分:1)

Microsoft Oracle Client和ODP.NET都不支持Entity Framework和LINQ to SQL。 新Beta版中的DataDirect支持Entity Framework,但不支持LINQ to SQL。 Devart dotConnect for Oracle支持实体框架(和LINQ to Entities)和LINQ to Oracle(Oracle特定于LINQ to SQL的实现)。

答案 4 :(得分:1)

我们在当前项目中使用Oracle 11g和Entity Framework 1.0(Visual Studio 2008 SP1)取得了巨大成功。为了弥补开箱即用功能的差距,我实施了一个名为EF Oracle ODP Provider的CodePlex免费工具。这利用了最新的Oracle数据提供程序,并提供了一个包装器来实现实体数据模型生成。遗憾的是,它与Visual Studio中内置的实体设计器不能很好地集成,因此您必须运行一些命令行实用程序才能使您的模型得到支持和维护。

您可以在此处找到更多信息:http://eforacleodpprovider.codeplex.com/

答案 5 :(得分:0)

Oracle现在通过其Oracle Data Access Components (ODAC)提供对Entity Framework的支持。但是,这仅支持.NET 4.0 +。

如果你和我这样的客户结束,他们顽固地坚持要坚持使用.NET 2.0 / 3.5,那么现在免费的Telerik Open-Access ORM的行为与Entity Framework非常相似,它支持包括Oracle在内的许多数据库。如果尚未支持旧版本的.NET,可能会被删除,但是有一些版本可以肯定地下载以提供支持。

答案 6 :(得分:0)

EF6支持被删除,所以我们不得不坚持使用EF5才能连接到oracle db。 我们遇到了一些映射问题。默认情况下它会将数字(5)映射为short,如果读取超过32k则会抛出异常。该修复程序在部署中导致了一堆错误。我们最终改变了数据库。避免使用数字(5)和数字(10)数据类型。

我目前正在购买另一个支持LINQ和Oracle的orm。

免费到目前为止,我找到了Telerik Data Access和NHibernate。