使用“dotconnect for oracle”绕过oracle客户端连接Oracle数据库

因为OA中会经常连接Oracle拉数据,但是最近突然出现问题,.net自带的System.Data.OracleClient在安装了32位oracle客户端的环境下每次conn.open()调用oracle的oci.dll时都会提示32位oracle客户端运行在64位环境无法调用,很是麻烦

所以找到了一个简单的办法,直接忽略本机的oracle客户端使用“dotconnect for oracle”的直接模式连接,而且

重点在于Direct设置为true,在相关类型的命名上和使用方法上与System.Data.OracleClient的类完全一致,不用另外学习

OracleConnectionStringBuilder oraCSB = new OracleConnectionStringBuilder();
oraCSB.Direct = true;
oraCSB.Server = "192.168.0.1";
oraCSB.Port = 1251;
oraCSB.Sid = "OracleSid";
oraCSB.UserId = "scott";
oraCSB.Password = "tiger";
oraCSB.MaxPoolSize = 150;
oraCSB.ConnectionTimeout = 30;
OracleConnection myConnection = new OracleConnection(oraCSB.ConnectionString);

然而遗憾的是express版本的“dotconnect for oracle”不支持直接模式,也就是不支持Direct属性,只有最基本的和System.Data.OracleClient无异的功能,收费版可30天试用

官网下载http://www.devart.com/dotconnect/oracle/download.html

原文地址:https://www.cnblogs.com/KSalomo/p/6481416.html