如何为.Net应用程序选择Oracle提供程序?

时间:2009-03-25 18:04:11

标签: c# oracle asp.net-2.0 provider

我想弄清楚将(现有的)ASP.Net应用程序连接到Oracle数据库以读取其字典信息的最佳方法是什么。

有太多可能性:

  • MS Data Provider for Oracle(需要8.1.7,命名空间System.Data.OracleClient)
  • Oracle Data Provider for .NET(需要9.2,命名空间Oracle.DataAccess)
  • OLE DB的Oracle提供程序
  • MSDASQL和ODBC

由于我当前的应用程序使用的是MSSQL服务器,因此可以选择其他选项:

  • 链接服务器,通过server..user.object访问
  • 通过OPENROWSET链接服务器

关于SO的类似主题有几个问题,但只有一些人接受了答案。

您对每位车手的体验如何?它们的优点和缺点是什么?

当然Oracle推荐ODP.Net。版本9.2(或更高版本)的要求今天是个问题吗?

3 个答案:

答案 0 :(得分:6)

我也推荐ODP.NET。选择最新的提供商(http://www.oracle.com/technology/tech/windows/odpnet/index.html)。它可以与Oracle 9.2数据库或数据库的较新版本连接。

适用于Oracle的MS Data Provider非常有限。您无法使用数组作为示例和用户定义的类型。为什么微软会为连接Oracle提供良好的支持?

您还可以查看devart的提供者:http://www.devart.com/dotconnect/oracle/。它支持实体框架。

答案 1 :(得分:4)

转储OLE DB和ODBC选项,如果您有直接数据访问提供程序,则无需使用OLE DB或ODBC。

我推荐Oracle Data Provider for .NET。

答案 2 :(得分:1)

微软刚宣布它是deprecating System.Data.OracleClient

我认为这给你留下了一些选择(至少):

  • ODP.NET(免费,来自Oracle)
  • DevArt
  • 的DataDirect

DevArt还有一个LINQ to Oracle实现,对你来说很有意思。