1、现象描述
小弟今天给客户部署软件,客户的服务器居是 windows server 2008(x64),装了 32位的oracle 客户端(服务端是另一服务器),小弟部署的是.net写的wcf,部署与iis7上
2、问题描述
在oracle 客户端的服务器上用sqlplus、pl/sql均能访问oracle,当用应用程序调用iis上的wcf时出现如下错误信息:
尝试加载 Oracle 客户端库时引发 BadImageFormatException。
如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
3分析原因
wcf 置于iis 默认的连接池是64位不能调用32位oracle client接口
3、解决方法
方法一:部署与iis上的wcf程序的连接池启用32位即可
方法二:安装oracle client 64位/32位 两个版本(应用将会自动根据自身的位数调用相应oracle client 版本(x64或x84)接口)
【小弟是菜鸟急需高手指点,只知其然,不知所以然】