Enterprise Library Step By Step系列(三):数据访问程序块——入门篇
在本篇随笔里面,一步一步说明怎么去用数据访问应用程序块来进行数据的访问,并给出相关的图示。
一.Data Access Application Block能够做什么?
1.提供最佳实践;
2.改善一致性;
3.改善安全性;
4.改善易用性;
二.Data Access Application Block使用:
这里我把DAAB的使用过程总结为三部曲。在开始前我们假设已经有一个新建好的项目,并且有Web.config或App.config配置文件。
第一步 定义配置:
1.运行Enterprise Library Configuration 工具,选择File | Open Application 打开App.config文件
2.右击Application,并选择New | Data Access Application Block
 
3.我们看到,在创建了一个Data Access Application Block的同时,也创建了一个Configuration Application Block。因为所有的应用程序快都是以配置应用程序块为基础的。
4.修改数据库的名称:
 
5.修改服务器的名称:
 
6.右击Sql Connection String,选择Parameter,创建一个新参数:
 
7.修改参数的名称为Uid,并修改Value,指定登录名:
 
8.用同样的方法再创建一个Password Parameter,取名Pwd;Value为登录密码:
9.最后创建一个数据库的实例:
 
10.选择File | Save All命令保存全部:
11.在项目中选择 属性|生成事件|生成后事件命令行 输入如下内容:
 copy "$(ProjectDir)\*.config" "$(TargetDir)"
copy "$(ProjectDir)\*.config" "$(TargetDir)"
第二步 创建数据库实例:
创建数据库实例有两种方法,一是默认的数据库实例,一是用命名实例映射到配置文件。
 ///创建默认的实例
///创建默认的实例2
 Database db = DatabaseFactory.CreateDatabase();
                Database db = DatabaseFactory.CreateDatabase();3
 
                4
 ///创建数据库实例
                ///创建数据库实例5
 Database db = DatabaseFactory.CreateDatabase("NorthWind");
                Database db = DatabaseFactory.CreateDatabase("NorthWind");
第三步 执行SQL语句:
DAAB可以执行静态的SQL语句,或者存储过程等。
        相关代码如下:
 /// <summary>
/// <summary>2
 /// 返回DataSet类型
        /// 返回DataSet类型3
 /// </summary>
        /// </summary>4
 private DataSet GetDataSet()
        private DataSet GetDataSet()5
 {
        {                6
 DataSet ds = db.ExecuteDataSet(CommandType.Text,"SELECT * FROM Employees");
            DataSet ds = db.ExecuteDataSet(CommandType.Text,"SELECT * FROM Employees");7

8
 return ds;
            return ds;9
 }
        }10
 
        11
 /// <summary>
        /// <summary>12
 /// 返回DataReader类型
        /// 返回DataReader类型13
 /// </summary>
        /// </summary>14
 /// <returns></returns>
        /// <returns></returns>15
 private DataReader GetDataReader()
        private DataReader GetDataReader()16
 {
        {            17
 DataReader dr = db.ExecuteReader(CommandType.Text,"SELECT * FROM Employees");
            DataReader dr = db.ExecuteReader(CommandType.Text,"SELECT * FROM Employees");18

19
 return dr;
            return dr;20
 }
        }21
 
        22
 /// <summary>
        /// <summary>23
 /// 返回单值
        /// 返回单值24
 /// </summary>
        /// </summary>25
 /// <returns></returns>
        /// <returns></returns>26
 private int GetSigleValue()
        private int GetSigleValue()27
 {
        {28
 int iCount = db.ExecuteScalar(CommandType.Text,"SELECT COUNT(*) FROM Employees");
            int iCount = db.ExecuteScalar(CommandType.Text,"SELECT COUNT(*) FROM Employees");29

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


 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号