使用Microsoft Enterprise Library 6.0的Oracle Data Provider(ODP.NET)?

时间:2013-05-13 13:07:15

标签: c# oracle enterprise-library odp.net daab

我使用ODP.NET的Oracle.DataAccess.Client 4.112.2作为我的Oracle数据提供程序和EntLib 6.0。有没有人知道已经实现此功能的人创建了自己的Oracle数据库,该数据库派生自EntLib的数据库。我尝试过以下方法:

var factory = new DatabaseProviderFactory("Oracle.DataAccess.Client");
var db = factory.Create("MyConnection");
var conn = (Oracle.DataAccess.Client.OracleConnection)db.CreateConnection();
conn.Open();
Console.WriteLine("Connection Successful!!!\nDatabase Type: \n" + db.GetType());
conn.Close();

这很好连接,但是当我调用db.ExecuteNonQuery()时,我收到错误“使用GenericDatabase的连接不支持参数发现”,因为通用数据库返回不知道如何使用ODP.NET检查参数。 EntLib Contrib项目为EntLib v5.0提供了这个问题的解决方案,但6.0中不支持其中的一些内容,而2011年的最新发布版本也是如此。请问是否有人可以帮助解决方案?

1 个答案:

答案 0 :(得分:0)

在Windows 8和Windows Server 2012下,不支持Oracle客户端(无法正常运行)。预计在11.2.0.4版本(您使用的是11.2.0.2)的某个时间(希望接近)将来会得到支持。请参阅Oracle的Statement of Direction