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,取名PwdValue为登录密码:
9.最后创建一个数据库的实例:
 
10. 选择 File | Save All 命令保存全部:
11 .在项目中选择   属性 | 生成事件 | 生成后事件命令行   输入如下内容:
None.gif copy  " $(ProjectDir)\*.config "   " $(TargetDir) "

第二步   创建数据库实例:
创建数据库实例有两种方法,一是默认的数据库实例,一是用命名实例映射到配置文件。
1 ExpandedBlockStart.gif ///创建默认的实例
2 None.gif                 Database db  =  DatabaseFactory.CreateDatabase();
3 None.gif                
4 ExpandedBlockStart.gif                 ///创建数据库实例
5 None.gif                 Database db  =  DatabaseFactory.CreateDatabase( " NorthWind " );
第三步   执行 SQL 语句:
     DAAB 可以执行静态的 SQL 语句,或者存储过程等。
        相关代码如下:
 1 ExpandedBlockStart.gif /// <summary>
 2InBlock.gif        /// 返回DataSet类型
 3ExpandedBlockEnd.gif        /// </summary>

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

10 None.gif        
11 ExpandedBlockStart.gif         /// <summary>
12InBlock.gif        /// 返回DataReader类型
13InBlock.gif        /// </summary>
14ExpandedBlockEnd.gif        /// <returns></returns>

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

21 None.gif        
22 ExpandedBlockStart.gif         /// <summary>
23InBlock.gif        /// 返回单值
24InBlock.gif        /// </summary>
25ExpandedBlockEnd.gif        /// <returns></returns>

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

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









本文转自lihuijun51CTO博客,原文链接:  http://blog.51cto.com/terrylee/67601 ,如需转载请自行联系原作者

相关文章