【IT168 技术文章】
随着 Microsoft 的 .NET Framework 的逐渐流行,许多开发人员迫切想了解关于将 .NET 应用程序与 Oracle 集成的非常好的方式的信息 — 不仅在基本的连通性方面,还包括与使用 Visual Studio.NET (VS.NET) 进行有效的应用程序开发的关系。
在本文中,我将说明构建使用 Oracle 数据库的 .NET 应用程序所涉及到的基本但不可或缺的过程,包括:
如何添加工程引用,以在您的 .NET 工程中支持 Oracle 类库
如何创建 Oracle 数据库连接字符串
如何使用 Connection、Command 和 DataReader 对象
您将有机会应用您在三个上机操作实践中学到的内容,难度从相对简单逐渐变复杂。
关于如何保护应用程序的信息和上机操作,请参见我的文章“在 Oracle 数据库上保护 .NET 应用程序”。(另外,有关涉及一系列 Oracle .NET 应用程序生命周期问题的技术文章,请参见 OTN .NET 开发人员中心。)
请注意,免费的 Oracle Developer Tools for Visual Studio(可从 OTN 下载)提供了一个 Visual Studio 插件,该插件可以简化 Oracle 上的 .NET 应用程序开发,并使之更加直观。但在这里我们不讨论这个问题;要想了解这方面的更多信息,您可以前往 Oracle Developer Tools for Visual Studio 产品中心。
.NET 数据提供程序
除了基本的 Oracle 客户端连通性软件,.NET 应用程序还需要使用称为受管理的数据提供程序(其中“受管理的”指的是代码由 .NET 框架管理)的工具。数据提供程序是指 .NET 应用程序代码和 Oracle 客户端连通性软件之间的层。几乎在所有情况下,最优的性能都是通过使用为特定数据库平台优化了的提供程序而不是通用的 .NET OLE DB 数据提供程序实现的。
Oracle、Microsoft 和第三方供应商都提供针对 Oracle 产品进行了优化的 .NET 数据提供程序。Oracle 和 Microsoft 免费提供其 Oracle 数据提供程序。(Microsoft 针对 .NET Framework 1.1 的提供程序包括在该框架中,但仍然需要 Oracle 客户端软件安装。)在本文中,我们将使用 Oracle Data Provider for .NET (ODP.NET),它包含在 Oracle 数据库中或者单独提供下载。
ODP.NET 提供标准的 ADO.NET 数据库访问,同时还提供专用于 Oracle 数据库的特性,如 XML DB、数据访问性能优化和真正应用集群连接池。
安装了 ODP.NET 和 Oracle 客户端软件后,就可以开始使用 Visual Studio 进行应用程序开发了。在开始开发前,请先确认客户端连通性。如果您可以使用 Visual Studio 所在计算机上的 Oracle 客户端软件(如 SQL*Plus)连接到 Oracle,您就知道 Oracle 客户端软件已经正确安装并配置。
如果您是初次接触 Oracle,请参阅 Oracle 数据库两日开发人员指南 中的“安装 .NET 产品”一节,以便具体了解有关如何安装和配置 ODP.NET 的信息,也可以参阅 Oracle 数据库文档库了解有关 Oracle 数据库的常规信息。
在 Visual Studio.NET 中创建工程
在启动 VS.NET 之后,第一个任务是创建一个工程。您可以单击 New Project 按钮或选择 File | New | Project...(如下所示)。
图 1:在 Visual Studio.NET 中创建一个新工程
出现一个 New Project 对话框。在对话框左侧的 Project Types 下,选择您的编程语言。在这个例子中,我们选择 VB.NET。在右侧的 Templates 下,选择一个工程模板。为简单起见,这里选择 Windows Application。
图 2:使用 New Project 对话框
您将需要为工程名称(我们使用 OraWinApp)和解决方案名称(我们使用 OraSamples)指定有意义的名称。一个解决方案包含一个或多个工程。当一个解决方案仅包含一个工程时,许多人对二者使用相同的名称。
添加引用
因为我们的工程必须与 Oracle 数据库连接,因此必须添加一个到包含我们选择的数据提供程序的 dll 的引用。在 Solution Explorer 内,选择 References 节点,右键单击并选择 Add Reference。或者,您可以转至菜单栏并选择 Project,然后选择 Add Reference。
图 3:添加引用
出现 Add Reference 对话框。
图 4:选择 ODP.NET 管理的数据提供程序
从列表中选择 Oracle.DataAccess.dll,然后单击 Select 按钮,最后单击 OK 按钮,使您的工程识别 ODP.NET 数据提供程序。
图 5:选择 Oracle 管理的提供程序之后的 Solution Explorer
VB.NET/C# 语句
在添加引用之后,标准的做法是要添加 VB.NET Imports 语句、C# using 语句或 J# import 语句。从技术上说这些语句不是必要的,但是使用它们可以让您不需用冗长且完全限定名称来引用数据库对象。
按照惯例,这些语句出现在代码文件的顶部或顶部附近,在命名空间或类声明之前。
Imports Oracle.DataAccess.Client ' VB.NET
using Oracle.DataAccess.Client; // C#
import Oracle.DataAccess.Client; // J#ODP.NET Oracle managed provider
如果您添加了引用,Intellisense 将帮助您完成 Imports 或 using 语句的添加。