部署WCF服务问题?

时间:2011-05-26 19:23:47

标签: wcf iis-6 64-bit

我已经编写了WCF服务并在我的开发机器上工作。这是一个简单的服务,它接受它的参数并将它们放入Oracle数据库。所有方面都经过测试,在我的32位开发机上运行良好。当我编译并将服务放在我们的64位开发服务器(运行IIS 6)中进行正确测试时,测试客户端会收到此错误:

  

无法加载文件或程序集   “Oracle.DataAccess,   版本= 2.111.7.20,文化=中立,   PublicKeyToken = 89b483f429c47342'或   其中一个依赖。

客户端根本不使用Oracle.DataAccess.dll,这是服务返回的错误。在VS2010中,我设置了引用不需要特定版本。但是,即使使用该集,它也会告诉我它找不到的版本。我曾尝试将32位和64位版本的DLL一次添加到服务的bin目录中,但都没有解决问题。

如果我理解正确,它应该在bin文件夹中没有这些DLL的情况下工作,因为GAC已经从服务器上的其他项目中获得了正确的DLL。我该怎么做才能解决这个问题?

更多详情: 如果我在bin文件夹中包含32位DLL,我会收到此错误:

  

无法加载文件或程序集“Oracle.DataAccess”或其依赖项之一。试图加载格式不正确的程序。

如果我在bin文件夹中包含64位DLL,我会收到此错误:

  

无法加载文件或程序集“Oracle.DataAccess,Version = 2.111.7.20,Culture = neutral,PublicKeyToken = 89b483f429c47342”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

1 个答案:

答案 0 :(得分:0)

关于这个问题的最佳答案可能是您正在寻找的内容:Targeting both 32bit and 64bit with Visual Studio in same solution/project