折腾了几天,记录下:
1.安装oracle client 32位版本即可,不可以同时装32位和64位,否则会冲突
2.web项目编译时右键属性->项目设计器->生成->平台->把'默认设置(任何 CPU)'改为x86。
因为'任何 CPU'的程序在64位的机器上就会用运行为64位,而64程序是不能加载32位dll的
3.原因分析:操作系统是64位的,但发布的程序引用了一些32位的ddl,所以出现了兼容性的问题。
解决方案:IIS——应用程序池——高级设置——启用32位应用程序 :true。
4.最后还是把那个32位的oracle client安装包执行安装了下,安装时选的管理员。而且以前遇到过asp.net连不上oracle,是oracle安装文件夹的权限问题,所以我又对oracle所在的文件夹加netservices用户完全控制的权限。再重启, OK!搞定,程序居然能够连上了