由于申请类型无法访问oci.dll
-
19-09-2019 - |
题
我正在尝试通过Visual Studio 2008中的实体框架创建与Oracle数据库的连接。我正在运行64位Vista Ultimate。
起初,我甚至通过Visual Studio与DB建立了连接,但最终通过安装10204_VISTA_W2K8_X64_PRODUCTION_DB和ODTWITHODAC1110720来使事情有效,但是只有通过Visual Studio进行接口所需的最小零件。
我完全是这个设置的新手,因此很可能已经犯了一个错误,但是安装两个软件包是我通过Visual Studio创建连接的唯一方法。
我建立了连接,并使用向导创建一个。 EDMX文件。模型和关联是完美创建的,我认为事情会很好。我将默认名称“实体”用作参考名称。
当我尝试执行以下操作时
filingsContext = New Entities()
filingsContext.TABLE_NAME_HERE.First()
我得到以下错误。
Innerexception = {“无法加载C: App Adexter orahome_1 oci.dll。请检查您是否使用64x应用程序使用64X版本的Oracle client。”}
除了运行应用程序时,我如何在每个点连接到Oracle DB?
解决方案
您遇到的问题是,您正在尝试在64位应用程序中加载32位版本的DLL。尝试将视觉基本应用切换到目标32位 / x86,这应该解决问题
- 右键单击解决方案资源管理器中的项目
- 选择属性
- 转到“编译”选项卡
- 单击高级编译选项
- 将目标CPU组合更改为X86
- 点击确定
其他提示
确保您已经安装了与ODAC的64位ODT版本。
看着 这个答案 关于如何确保您的应用程序将使用哪个客户端版本(最终目标的某些链接更具体地说是C#语言,但可以适用于VB .NET)。
不隶属于 StackOverflow