C#调用Oracle.DataAccess报错

2024-04-02 11:32

本文主要是介绍C#调用Oracle.DataAccess报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【前言】

最近开发项目不想再使用低版本的.Net Framework,因为开发工具升级了,并且调用的第三方库也都在新版本中有不错的体验,我们何必要墨守成规呢?!所以,最终我使用VS2015+.Net Framework4.0+Oracle 11g Client开发新项目。

【问题描述】

我这边开发环境都搭建好了,但编译时却有警告提示“warning CS0618: 'OracleConnection' is obsolete: 'OracleConnection has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260'”。好多开发朋友都说这就是个提示,不必大惊小怪的,但强迫症还是让我更换掉了以前引用的“System.Data.OracleClient”库,改成微软推荐的“Oracle.DataAccess”库。

编译OK了,没有任何警告和报错,然后将程序打包给客户测试。杯具了~客户那边链接数据库时提示“‘Oracle.DataAccess.Client.OracleConnection’的类型初始值设定项引发异常”,我就奇怪了,为什么我开发测试都没问题,客户到底干了什么?

【问题分析】

上网找了好多类似情况的解决方法,有人说是跟这个“Oracle.DataAccess”库版本有关系,我还特意看了一下我的库真是v2.0版本的应该没问题。如图1所示:

                                                                                        图1

还有人说跟Oracle客户端安装版本和多少位有直接关系。但客户这里安装的都是我要求的Oracle 11g client(32位)版本,并且我还特意将软件安装包发给大家(以免自己在网上找的版本不正确)所以,客户的问题应该跟版本没多大关系。

【解决方法】

最后实在没有办法了,我远程到客户的电脑,找到环境变量中的“Path”变量对应的值,从中找到Oracle执行目录。如图2所示:

                                                                                                 图2

根据路径找到指定的目录,发现我的天啊,客户电脑上居然没有。详细询问后得知,他将目录重命名了,说是以为要跟服务器路径一致呢!我哭的心都有了!!!

最后将Oracle客户端安装的目录名称修改回Path值中的名称即可。

注:如果修改回来还是不好使,请卸载Oracle客户端,重新安装一遍。

这篇关于C#调用Oracle.DataAccess报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/869863

相关文章

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

C# string转unicode字符的实现

《C#string转unicode字符的实现》本文主要介绍了C#string转unicode字符的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录1. 获取字符串中每个字符的 Unicode 值示例代码:输出:2. 将 Unicode 值格式化

Java中将异步调用转为同步的五种实现方法

《Java中将异步调用转为同步的五种实现方法》本文介绍了将异步调用转为同步阻塞模式的五种方法:wait/notify、ReentrantLock+Condition、Future、CountDownL... 目录异步与同步的核心区别方法一:使用wait/notify + synchronized代码示例关键

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

Python Jupyter Notebook导包报错问题及解决

《PythonJupyterNotebook导包报错问题及解决》在conda环境中安装包后,JupyterNotebook导入时出现ImportError,可能是由于包版本不对应或版本太高,解决方... 目录问题解决方法重新安装Jupyter NoteBook 更改Kernel总结问题在conda上安装了

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及