Enterprise library Data Access Application Block试用手记

Data Access Application Block 的好处:
1. 减少编写重复累赘代码去执行标准的任务。 
2. 帮助在应用程序内部和跨企业应用维护一致的数据访问实践。
3. 降低改变物理数据目标的难度。
4. 减轻开发人员学习不同数据库类型的不同编程模型。 l   当移植应用程序到不同数据库类型时,减少重写代码的数量。  
Data Access Application Block依赖项:
1. Data Access Application Block依赖其他的application blocks和Enterprise Library中的代码。
2. Configuration Application Block – Data Access Application Block使用该 Configuration Application Block读取配置信息。
3. Microsoft.Practices.EnterpriseLibrary.Common.dll
4. Microsoft.Practices.EnterpriseLibrary.Data.dll
5. Microsoft.Practices.ObjectBuilder.dll  
使用Enteprise Library配置工具创建配置文件:
创建 DataDemo 应用程序,使用Enterprise Library Configuration打开配置app.config文件。在” Connection Strings ”节点单击右键,选择NEW ,新添一个Connection Strings ,设置它的Name 和 ConnectionString.
要配置Connection ,Enterprise Library Configuration提供了简便的操作方式,点击后面按钮,出现如下图的配置窗口, 系统将根据填入的信息自动生成相应的ConnectionString.
 Data Access Application Block的特性:                                                                                
1.简单且有效的方式访问通用数据库。
2.透明支持多数据库类型的开发。
3.映射逻辑数据库实例名和物理连接
4.方便地调整和验证数据库配置设置。  
 类设计视图   下图来自Enterprise Library文档,描述了DAAB中主要类之间的关系:
    
 Data Access 示例
1. 增加对Microsoft.Practices.EnterpriseLibrary.Data.dll和Microsoft.Practices.EnterpriseLibrary.Common.dll 的引用
2.在代码在添加:
using Microsoft.Parctices.EnterpriseLibrary.Data;
using Microsoft.Parctices.EnterpriseLibrary.Common;
3.调用代码示例:
(1)ExecuteDataSet 方法

Database :抽象类Database定义了通用接口并提供了大量数据访问方法的实现,SqlDatabase, OracleDatabase和Db2Database类均继承Database类,它们分别对各自的数据库服务系统提供了方法,包括不同数据库系统的通用功能和特定数据库系统的特有功能。

DatabaseFactory : DatabaseFactory类提供了静态方法CreateDatabase,用来封装创建Database对象的逻辑。通过使用该工厂方法创建正确的Database对象,客户端代码并没有绑定到特定的数据库类型。DatabaseFactory类使用Configuration Application Block检索必要的配置(app.config)信息,包括要创建的特定Database继承类的类型名称和连接字符串。

(2) ExecuteReader方法

 (3) ExecuteNonQuery方法  

DbCommand : 表示要对数据源执行的 SQL 语句或存储过程的对象。它是一个数据库操作对象,但并未包含具体的数据库类型,其类型是根据Database所创建的。

(4) ExecuteScalar方法

ExecuteScalar: ExecuteScalar一般用于执行有聚合函数的SQL语句,它以Object类型返回出这条语句的执行结果. 如果结果返回多条数据,则只取第一行第一列的数据.

 (5) 执行Transaction

 DbConnection:DbConnection类,并不指定其具体的数据库连接类型,他是通过Database对象的CreateConnection方法来实例化,CreateConnection方法会在App.config中去找相应的数据库对象.  

(6) 执行StoreProc * 将执行的是一个不带OutPut的存储过程,它返回一个数据集  

 (7)执行带输出参数的StoreProc * 将执行的是一个带OutPut的存储过程,它返回string

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值