C#-[祈福]天佑中华 众志成城 抗震救灾 重建家园

你的苦难就是我们的苦难,你的希望就是我们的希望。当灾难来临时,我们与你在一起,一起为逝者默念安息、一起为伤者祈祷平安。而更多的关怀和力量,正悄悄在汇集:天佑中华,众志成城;抗震救灾、重建家园......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Data Access Application Block V1.1

Posted on 2008-05-11 12:07  尹合磊  阅读(508)  评论(1编辑  收藏  举报

一.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

ED01.jpg

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

4.修改数据库的名称:

ED02.jpg

5.修改服务器的名称:

ED03.jpg

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

ED05.jpg

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

ED056.jpg

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

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

ED04.jpg

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

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

copy "$(ProjectDir)\*.config" "$(TargetDir)"

第二步 创建数据库实例:

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

1///创建默认的实例
2                Database db = DatabaseFactory.CreateDatabase();
3                
4                ///创建数据库实例
5                Database db = DatabaseFactory.CreateDatabase("NorthWind");

第三步 执行SQL语句:

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

        相关代码如下:

 1/// <summary>
 2        /// 返回DataSet类型
 3        /// </summary>

 4        private DataSet GetDataSet()
 5        {                
 6            DataSet ds = db.ExecuteDataSet(CommandType.Text,"SELECT * FROM Employees");
 7
 8            return ds;
 9        }

10        
11        /// <summary>
12        /// 返回DataReader类型
13        /// </summary>
14        /// <returns></returns>

15        private DataReader GetDataReader()
16        {            
17            DataReader dr = db.ExecuteReader(CommandType.Text,"SELECT * FROM Employees");
18
19            return dr;
20        }

21        
22        /// <summary>
23        /// 返回单值
24        /// </summary>
25        /// <returns></returns>

26        private int GetSigleValue()
27        {
28            int iCount = db.ExecuteScalar(CommandType.Text,"SELECT COUNT(*) FROM Employees");
29
30            return iCount;
31        }


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