(.net版本3.5 ,VS2012,64位主机,安装Oracal64位客户端)桌面程序使用代码段可以正常连接,一放入WCF中连接异常显示如下:
尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
代码如下:
string strIP = "10.0.0.103";//主机名或IP
string strUser = "alure_db";//用户名
string strPw = "sdDB2016";//密码
string strTemp = "ORCL";//服务名或SID
string Conn = string.Format("User Id={0};Password={1};Data Source=(DESCRIPTION=" +
"(ADDRESS=(PROTOCOL=TCP)(HOST={2})(PORT=1521))" +
"(CONNECT_DATA=(SERVICE_NAME={3})));", strUser.Trim(), strPw.Trim(), strIP.Trim(), strTemp.Trim());
OracleConnection conn = new OracleConnection(Conn);
try
{
if (conn.State != ConnectionState.Open)
conn.Open();
msg = "OPEN";
}
catch (Exception ex)
{
msg = "Fail";
}
用了一台32位的机子结果正常
=>结论就是WCF连接时候,IIS配置为32位.现在不知道怎么改这些,求解答!!