Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

本文转载自:http://www.cnblogs.com/terrylee/archive/2005/10/18/257167.html 作者:Terrylee 转载请注明该声明。

写在前面:本来在前面说要写配置应用程序块的设计篇,现在我想先把各个应用程序块的入门篇和进阶篇写完后,再统一写设计篇,希望大家理解:)

在本篇随笔里面,一步一步说明怎么去用数据访问应用程序块来进行数据的访问,并给出相关的图示。

一.Data Access Application Block能够做什么?

       1.提供最佳实践;

       2.改善一致性;

       3.改善安全性;

       4.改善易用性;

二.Data Access Application Block使用:

这里我把DAAB的使用过程总结为三部曲。在开始前我们假设已经有一个新建好的项目,并且有Web.configApp.config配置文件。

第一步 定义配置:

1.运行Enterprise Library Configuration 工具选择File | Open Application 打开App.config文件

2.右击Application,并选择New | Data Access Application Block

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

3.我们看到,在创建了一个Data Access Application Block的同时,也创建了一个Configuration Application Block。因为所有的应用程序快都是以配置应用程序块为基础的。

4.修改数据库的名称:

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

5.修改服务器的名称:

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

6.右击Sql Connection String,选择Parameter,创建一个新参数:

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

7.修改参数的名称为Uid,并修改Value,指定登录名:

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

8.用同样的方法再创建一个Password Parameter,取名PwdValue为登录密码:

9.最后创建一个数据库的实例:

 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇

10.选择File | Save All命令保存全部:

11.在项目中选择 属性|生成事件|生成后事件命令行 输入如下内容:

Enterprise Library Step By Step系列(三):数据访问程序块——入门篇copy  " $(ProjectDir)\*.config "   " $(TargetDir) "


第二步 创建数据库实例:

创建数据库实例有两种方法,一是默认的数据库实例,一是用命名实例映射到配置文件。

1 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇/**/ ///创建默认的实例
2 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇                Database db  =  DatabaseFactory.CreateDatabase();
3 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇                
4 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇                 /**/ ///创建数据库实例
5 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇                Database db  =  DatabaseFactory.CreateDatabase( " NorthWind " );

第三步 执行SQL语句:

     DAAB可以执行静态的SQL语句,或者存储过程等。

        相关代码如下:

 1 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇/**/ /// <summary>
 2Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// 返回DataSet类型
 3Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// </summary>

 4 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         private  DataSet GetDataSet()
 5 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         Enterprise Library Step By Step系列(三):数据访问程序块——入门篇 {                
 6Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            DataSet ds = db.ExecuteDataSet(CommandType.Text,"SELECT * FROM Employees");
 7Enterprise Library Step By Step系列(三):数据访问程序块——入门篇
 8Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            return ds;
 9Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        }

10 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        
11 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         /**/ /// <summary>
12Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// 返回DataReader类型
13Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// </summary>
14Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// <returns></returns>

15 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         private  DataReader GetDataReader()
16 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         Enterprise Library Step By Step系列(三):数据访问程序块——入门篇 {            
17Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            DataReader dr = db.ExecuteReader(CommandType.Text,"SELECT * FROM Employees");
18Enterprise Library Step By Step系列(三):数据访问程序块——入门篇
19Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            return dr;
20Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        }

21 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        
22 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         /**/ /// <summary>
23Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// 返回单值
24Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// </summary>
25Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        /// <returns></returns>

26 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         private   int  GetSigleValue()
27 Enterprise Library Step By Step系列(三):数据访问程序块——入门篇Enterprise Library Step By Step系列(三):数据访问程序块——入门篇         Enterprise Library Step By Step系列(三):数据访问程序块——入门篇 {
28Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            int iCount = db.ExecuteScalar(CommandType.Text,"SELECT COUNT(*) FROM Employees");
29Enterprise Library Step By Step系列(三):数据访问程序块——入门篇
30Enterprise Library Step By Step系列(三):数据访问程序块——入门篇            return iCount;
31Enterprise Library Step By Step系列(三):数据访问程序块——入门篇        }


总结,本文只是简单的给出DAAB的使用过程,在下篇的进阶篇中我会写使用DAAB执行存储过程以及参数的传递、事务的支持,连接信息的加密等内容。