最近遇到一个.NET连接Oracle的一个错误,其主要原因是换了一台电脑,在新电脑上运行以前的项目出现了的一个错误,工作环境为vs2017+Oracle 64位,win10系统

这个错误头疼了一天,找了好多博客去解决这个问题

在这主要是总结一下本人的解决思路与方法。
1.查看自己的Oracle客户端是否安装成功(我只安了客户端,没有安装服务端),安装时一定要是否是以管理员方式运行。查看注册表和环境配置是OK的。
2.点击安装到的文件夹,右键属性,点击选项卡上安全选项,添加一个组或域名(见下图),

3.现在可以先把项目发布到IIS上运行,如果还是报这个错。更改应用程序池中的项目—高级设置—启用32位应用程序(如果是要运行32位的设置true,因为我的是64位的所以设置为false)

4.运行成功后,那Oracle配置应该是没有什么问题了,在vs上调试如果报的错误还是这个就把vs上的选项web项目,把使用IIS Express 64位版选中。

补充:操作过程中遇到了一点其他的错误也提说以下我的解决方案
1.需要安装客户端高版本问题

解决方案:这个是因为没有找到你配置Oracle环境下的oci.dll文件导致,安装完Oracle客户端之后在文件中找到这个oci文件,把环境配置到这个文件的目录上。
2.无法解析指定的连接标识符

解决方案:错误是因为项目中的配置文件去找连接标识符,因为是新安装的Oracle忘记配置了的原因,在这个文件中配置一下连接标识符(见下图)。

增加方法:
最近又遇到这个情况之后把之前用的方法都试了一下,不过环境有一些不同是vs201和Oracle11g客户端+服务器。以上方法排除一边之后还是不可以使用,让后百度找到另一种方法测试了一下完美解决了此问题。
流程为:下载instantclient_11_2.zip(自行百度)然后放进你安装Oracle的路径下例如:G:\app\Administrator\product(这是我电脑安装Oracle的路径)
然后在环境变量中配置path,添加instantclient_11_2的路径例如:

然后在环境变量中添加一个变量,变量名:TNS_ADMIN 变量值:G:\app\Administrator\product\11.2.0\client_1\network\admin(这个是Oracle安装文件的地址,会有不一样,我的是配置的是客户端的文件夹,tnsnames.ora找到放这个文件的文件夹就可以了)
以上就是我解决这个问题的思路,如果过程中有不对的地方,请大佬指出

|