Enterprise Library :数据访问程序块学习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.在项目中选择 属性|生成事件|生成后事件命令行 输入如下内容:

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


第二步 创建数据库实例:

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

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

第三步 执行SQL语句:

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

        相关代码如下:

 1 ExpandedBlockStart.gif ContractedBlock.gif /**/ /// <summary>
 2InBlock.gif        /// 返回DataSet类型
 3ExpandedBlockEnd.gif        /// </summary>

 4 None.gif          private  DataSet GetDataSet()
 5 ExpandedBlockStart.gifContractedBlock.gif         dot.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.gifContractedBlock.gif         /**/ /// <summary>
12InBlock.gif        /// 返回DataReader类型
13InBlock.gif        /// </summary>
14ExpandedBlockEnd.gif        /// <returns></returns>

15 None.gif          private  DataReader GetDataReader()
16 ExpandedBlockStart.gifContractedBlock.gif         dot.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.gifContractedBlock.gif         /**/ /// <summary>
23InBlock.gif        /// 返回单值
24InBlock.gif        /// </summary>
25ExpandedBlockEnd.gif        /// <returns></returns>

26 None.gif          private   int  GetSigleValue()
27 ExpandedBlockStart.gifContractedBlock.gif         dot.gif {
28InBlock.gif            int iCount = db.ExecuteScalar(CommandType.Text,"SELECT COUNT(*) FROM Employees");
29InBlock.gif
30InBlock.gif            return iCount;
31ExpandedBlockEnd.gif        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值