您的位置:首页 > 数据库

设计数据库存取层生成工具(二) 定义工具目标

2011-04-03 00:20 183 查看
我们先来罗列一下目的,以便在设计过程中时时回顾,永不偏离我们的初衷:

1. 针对以数据库为中心的信息系统,不要希望数据库会跟着你的应用转;

2. 数据查询和业务分离,不能在业务层出现SQL查询或者类SQL对象查询;

3. 工具直接生成可用代码或程序,避免手工编写DAL代码。

对于第一点,数据库设计是信息系统建模的主要工作,只会根据信息模型调整,而不根据应用结构或设计变化。

对于第二点,前两天在cnblog上看到一个AgileEAS.NET的代码,它把使用LINQ查询的部分叫做业务层,也许也是一种做法吧;我这里把它叫做数据存取层,因为查询实际上是数据库内完成的,同时数据库管理员也根据查询来建立索引,优化读写。所以我希望这些查询最好能够相对集中,可供数据库管理员分析、优化以及建立索引。

对于第三点,我们知道.NET提供了Emit中间语言的字节码功能,也提供了CodeDom来生成源码,然后再将源码编译为IL代码。我们通常用后者做Wizard,生成的源码作为模板,然后用户可以再插入其它代码。既然这里我们不希望用户再填充代码,那就直接使用Emit IL好了。

这些定下来后,明天就可以开始程序设计了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐