-1

快速提问。我有一个学校作业,为此我获得了 Oracle 服务器的连接信息,包括服务器 URL、端口号、登录 ID、密码、SID 和服务器地址。我们可以完全自由地使用我们想要的任何语言,我选择了 C#。我想知道是否有人可以推荐使用什么库来连接数据库服务器并查询它。我尝试在 Google 上搜索此信息,但所有现有文章似乎都在使用 Visual Studio 2012/.NET 4.5 中不再可用的已弃用库,或者需要一个需要令人费解的复杂过程的 Oracle 库安装第一眼。我希望有人可以推荐一个占用空间小的易于安装的库,我可以使用它来使用给定的连接信息查询这个 oracle 数据库服务器。


所以我下载并安装了 ODP.net(将安装目录和 bin 目录添加到 PATH 环境变量和所有内容中),出于某种原因,Visual Studio 没有将其显示为参考列表中的参考。我试图通过简单地添加 dll 的路径作为参考来规避这个问题(在我的例子中:C:\Tools\Oracle...\Oracle.DataAccess.dll),起初一切都很好。甚至智能感知也看到了库的类和东西,但是当我真正尝试运行代码时,它说:

无法加载文件或程序集 'Oracle.DataAccess, Version=4.112.3.0, Culture=neutral, PublicKeyToken=89b483f429c47342' 或其依赖项之一。试图加载格式不正确的程序。

你知道这些问题中的任何一个可能是由什么引起的吗?

4

2 回答 2

2

您应该使用 Oracle 推荐的适用于 .NET的 Oracle 数据提供程序。Microsoft 提供的OracleConnection类自 .Net framework 4.0 起已过时

Oracle Data Provider for .NET (ODP.NET) 优化了对 Oracle 数据库的 ADO.NET 数据访问。ODP.NET 允许开发人员利用高级 Oracle 数据库功能,包括 Real Application Clusters、XML DB 和高级安全性。数据提供程序可与最新的 .NET Framework 4 版本一起使用。

ODP.NET 使从 .NET 使用 Oracle 更加灵活、更快、更稳定。ODP.NET 包括许多其他 .NET 驱动程序不具备的功能,包括本机 XML 数据类型、自我调整、RAC 优化的连接池、可升级事务和高级队列。

于 2012-11-13T06:23:57.243 回答
1

我建议使用 NHibernate。(它使用 ODP.NET 作为数据提供者)

这是使用示例: http: //nhbwithoracle.blogspot.ru/

于 2012-11-13T06:22:46.993 回答