代码改变世界

SmartDAL(二) 使用

2009-09-08 00:23  Amar-Yao  阅读(2277)  评论(4编辑  收藏  举报
  SmartDAL适合任何.Net应用程序,使用也比较简单。整个项目有一个微内核的结构,这种设计在现代的应用框架领域很流行。内核的启动过程也就是SmartDAL系统初始化过程。我们以一个Asp.Net MVC项目为例,Application_Start方法中的代码如下。
Code

  第5行实例化了MicroCore并传入了应用名称。7-13行初始化了内核中基础服务之一:FileService,14行启动SmartDAL。可以看到第7行我们将服务器端代码执行路径赋值给了FileService.ApplicationRootPath。第8行将我们的配置文件的存储路径设置为App_Data。这是因为在Web项目中这个文件夹下的文件时不允许下载的。SmartDAL用以上两个目录拼出配置文件的存储路径并在第一次启动时生成初始配置文件。同时注意SmartDAL的日志文件也会自动放在这个目录下。目前这个版本还不能自定义日志文件的路径。这个特性以后会实现。
  启动应用在App_Data先看到两个文件已经生成。
 
  用记事本打开datasource.cfg文件。修改你的数据源名称和链接字符串。和其他数据信息。
 
Code

  其实这个配置文件就是DataSource类实例的XML序列化。
  DataSourceName是这个数据源的名称,当SmartDAL同时连接多个数据源时,在执行Sql时要传入这个数据源名称作为参数。当不传参数时SmartDAL会默认取第一个数据源作为执行数据源。
  ConnectionString 就是你的数据库链接字符串。
  DataProvider是对应数据源在SmartDAL中的提供者全名。目前有3个提供者:SqlDataProvider,OracleDataProvider,DB2DataProvider。
  DSType是数据源类型,是常量定义:SQLSERVER,ORACLE,DB2(由于目前SmartDAL底层的Sql翻译器正在开发,目前只能在SLQSERVER数据库上使用)
  好了下面简单说说SmartDAL的具体用法。这里先简单介绍,后续有相关的文章详细说明。
  SmartDAL内部提供了几套API来简化Sql的拼写及运行。统一的入口就是DataAccessService这个静态类并通过QueryCommond这个类来执行Sql语句。但是Sql语句的拼写过程有3种不同的方法。1.通过Query对象,以链式调用的方式构造Sql(熟悉jquery的朋友可能会比较喜欢) 2.自己拼写Sql语句并传递给QueryCommond,这样的Sql语句在完整版的SmartDAL中只需用T-Sql编写。3.用SqlProductor传递相关参数自动拼写Sql语句(常用的Select,Update,Delete,Insert...)
  好了今天篇幅不短了。API的使用以后章节再细说吧。