我的工作: VS2010 C# 甲骨文12C ODP.Net Managed121012

我继承了同时使用托管和非托管数据访问DLL的应用程序。它一直在工作,直到我卸载oracle。然后,我重新安装了一台64位机器的11g客户端。马上我注意到只有数据访问DLL的框架2安装,但我继续无论如何。然后,我将client_1文件夹中的所有oci和ora dll复制到我的应用程序的bin目录中,并将Oracle.DataAccess.dll复制到我的bin目录中。我还将Oracle.ManagedDataAccess.dll复制到此文件夹中。

只要我没有更改我的数据集上的任何内容,我的应用程序就会成功运行。我会很高兴地继续这样做,除了我必须创建更多的数据集。当我尝试添加新数据集时,我的数据源连接向导下拉列表为空。然后我尝试重新创建连接,但只能看到.Net Framework DProviders。我看不到托管提供商。在某些时候,我也遇到了这个错误:“目前没有选择数据提供者”。

认为这是因为未安装托管提供程序我卸载了11g客户端并安装了64位12c客户端,并将所有相关文件复制到我的应用程序的bin文件夹中。我添加以下行到我的app.config文件:

description="Oracle Data Provider for .NET, Managed Driver"

type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />

这之后,我现在可以看到一些旧的数据源,但我无法连接到我的数据库,因为我得到“连接请求超时”。当我手动创建一个新连接时,我可以很好地与非托管提供程序连接,但获取连接请求超时错误。

我真的非常喜欢我的绳子,在使用绳子之前我会很感激新鲜的眼睛。

在此先感谢。

+0

通常,ODP.NET托管驱动程序不需要进一步安装Oracle客户端。为了使用非托管的ODP.NET提供程序,您有一些条件,请参阅:http://stackoverflow.com/questions/659341/the-provider-is-not-compatible-with-the-version-of-oracle-客户端#25412992 –

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐