【发布时间】:2018-06-05 18:31:52
【问题描述】:
这个问题类似于link
我修复了这个问题,但是当我打开新项目 Wcf 服务库时,我遇到了同样的问题,而且我之前所做的所有这些更改都没有帮助我。
我尝试了以前做过的所有事情,甚至更多,但没有帮助。
重要要说,如果我在另一个项目中做同样的事情,一切正常,但在 WcfServiceLibrary 中它不起作用。在 WcfServiceApplication 中它也起作用。
我用的是VS2012(4.5) Win7(64),我的Oracle clien 32,但是在其他项目中这不是问题。
也许是因为我不知道 Wcf 库项目。 我只是建立从数据库中保存 datd 的服务,但在连接到 db 时出现错误。
Error: Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.
我的代码
using (OracleConnection con = new OracleConnection())
{
con.ConnectionString = "User Id=zxc;Password=zxc;Data Source=NXE";
con.Open();//here i get error
OracleCommand cmd = new OracleCommand();
cmd.Connection = con;
cmd.CommandText = "select * from " + Table;
int rowsUpdated = cmd.ExecuteNonQuery();
OracleDataReader reader = cmd.ExecuteReader();
String DataFromORL = "";
int row = 0;
while (reader.Read() && row < 50)
{
row++;
if (reader.HasRows)
{
DataFromORL += reader.GetInt32(0);
}
}
}
【问题讨论】:
-
con.Open()行的错误是什么? -
尝试加载 Oracle 客户端库会引发 BadImageFormatException。在安装了 32 位 Oracle 客户端组件的 64 位模式下运行时会出现此问题。
-
将构建平台目标从“任何 CPU”更改为仅 32 位,看看是否没有帮助
-
不,它没有帮助,