Rickie Lee's blog

我是Rickie,毕业于上海交大,一直从事.NET平台上相关技术的开发、研究,多年服务于B2C 电子商务领域,包括前台、后台及仓库管理系统的业务流程分析、开发设计与实施。
现在正式加盟 - http://www.entlib.com 协力创建基于.NET的开源电子商务系统。 MSN:rickiechina@hotmail.com -- 欢迎交流!

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  394 随笔 :: 3 文章 :: 1421 评论 :: 129 引用

Enterprise Library: Data Access Application Block使用向导
 Part 1

Written by: Rickie Lee (rickieleemail#yahoo.com)

My blog:http://www.cnblogs.com/rickie

Data Access Application Block有如下好处:

l         减少编写重复累赘代码去执行标准的任务。

l         帮助在应用程序内部和跨企业应用维护一致的数据访问实践。

l         降低改变物理数据目标的难度。

l         减轻开发人员学习不同数据库类型的不同编程模型。

l         当移植应用程序到不同数据库类型时,减少重写代码的数量。

 

Data Access Application Block依赖项:

l         Data Access Application Block依赖其他的application blocksEnterprise Library中的代码。

l         Configuration Application Block – Data Access Application Block使用该Configuration Application Block读取配置信息。

l         Common类库功能,如instrumentation – 提供不同功能用来显示事件和系统管理的数据。

l         此外,application block使用XML文件存放配置信息,推荐采用Enteprise Library配置工具来修改这些配置信息。

 

使用Enteprise Library配置工具创建配置文件:

创建DemoDAAP应用程序,使用Configuration Console配置app.config文件。应注意Connection String的设置,在本示例中,设置Integrated SecurityFalse,并添加User IDPassword参数及其参数值,Database属性值为Northwind
Enterprise_ConfigurationConsole.jpg

选择合适的重载方法

每一个数据访问方法均有许多重载,如下的描述和指导帮助你选择合适的重载:

l         一些重载方法接受DBCommandWrapper对象,DBCommandWrapper在一个对象内同时封装了command和参数。允许你同时增加输入/输出参数和设置这些参数的类型。这些重载提供了很好的灵活性和对每一个方法的控制。

l         一些重载方法接受存储过程和存储过程参数集合,当调用仅有输入参数的存储过程时,调用这些重载比较方便。

l         一些重载方法接受System.Data.CommandType和字符串命令,当执行在线的SQL语句或没有参数的存储过程时,调用这些重载比较方便。

l         最后,上述的每一个重载都包含一个接受事务的重载方法,当在现有事务内执行方法时,允许你使用合适的重载类型。

 

未完,Part 2待续。
*** Updated ***
Enterprise Library: Data Access Application Block使用向导,Part 2

**

作者:Rickie Lee (rickieleemail#yahoo.com)

本文参考Enterprise Library: Data Access Application Block Quick Start范例,简单编写一个DEMO

 

0
0
(请您对文章做出评价)
« 上一篇:Business Intelligence Portal Sample Application for Microsoft Office
» 下一篇:Enterprise Library: Data Access Application Block使用向导,Part 2
posted on 2005-02-05 02:08 Rickie 阅读(11779) 评论(13)  编辑 收藏 网摘 所属分类: E.Enterprise Library

评论

嗯嗯,我就是不能让DAAB部分正常运行,好贴!
  回复  引用  查看    

#2楼 2005-02-05 09:16 KingofSC
说得daab是不是带源代码哪个?
那个好像没有配置文件的说

  回复  引用    

#3楼 2005-02-10 23:37 jlzhou
感谢Rickie Lee!

非常感谢,非常有帮助!

  回复  引用    

#4楼[楼主] 2005-02-12 14:29 Rickie      
jlzhou, thanks for your honorable comments.

  回复  引用  查看    

#5楼 2005-02-17 13:29 冰火      
谢谢 Rickie,学习中!
  回复  引用  查看    

#6楼 2005-04-12 17:11 Jarod
string sqlCommand = "SELECT * FROM Employees WHERE EmployeeId = @EmployeeId";

Database db = DatabaseFactory.CreateDatabase();
DBCommandWrapper dbCommandWrapper = db.GetSqlStringCommandWrapper(sqlCommand);
dbCommandWrapper.AddInParameter("@EmployeeId", DbType.Int32, employeeId);

return db.ExecuteDataSet(CommandType.Text, sqlCommand);

但出现错误:
必须声明变量 '@EmployeeId'。
以前用ADDB2.0,现在改成这样就抱错,请问怎么解决?谢谢!

  回复  引用    

#7楼 2005-05-24 00:11 Jackie[未注册用户]
请问如何用MEL里面的String Resources (.SR) 来做国际化版本。
  回复  引用    

#8楼 2005-09-24 15:35 gjh[未注册用户]

  回复  引用    

#9楼 2006-04-05 11:00 jedliu[未注册用户]
ConnectionStringNoCredentials
在调用DoLoadDataSet函数时,当填充dataset时,出现这个异常。
当前用户是administrator,有足够权限。数据库用的是local。

  回复  引用    

#10楼 2006-04-05 11:20 jedliu[未注册用户]
sorry,没写完。是
this.instrumentation.CommandFailed("DbDataAdapter.Fill()", ConnectionStringNoCredentials);

  回复  引用    

#11楼 2006-04-17 14:42 梁广永      
学习,
  回复  引用  查看    

#12楼 2007-01-17 13:50 amoshuo[未注册用户]
谢谢 Rickie,学习中!
  回复  引用