分类
DBForm的设计来源以及主要构想‖
| DBForm的设计思想来源 信息比较多,而且大多是模 以贷款的查询来举例,主要 家庭收入状况,所在地区, 金额等贷款方面的具体信息 的模块比较多,每个模块的 量真得很大 | 于我最近作的学生信息管理系统 糊查找(贷款,奖学金,勤工助 包括了学生学号,姓名,班级, 学习成绩等级等个人信息扩展情 ,数据量众多,编写用于查询的 查询信息却是大逑嗤绻?br> | 的要求,整个信息系统要求的查询 学,考试情况,个人情况等等)。 年级,所属学院等个人基本情况和 况以及贷款类别,贷款时间,贷款 sql语句十分麻烦,况且将要完成 一个模块都单独写查询语句,工作 |
| 仔细分析了各个模块的 同的,主要是用于查询的字 出了基本的DBForm构想 | 功能之后,我们发现模块间查询 段和窗体控件名等信息,于是我 | 的界面,主要操作大体相似,所不 们开始了整个代码的提炼工作,提 |
| :根据遍历窗体中的控件组,提取出要查询的数据库字段以及用户输入的数据 |
| WinForm窗体中,有一 | 个非常好的Tag属性,可以非常 | 方便的保存我们所需要的数据 |
| WebForm窗体中,很遗憾,没有Tag属 们DBForm中队数据库子端的添加要求 | 性,我们就自己继承了类,添加了Tag属性,满足我 |
| 查询不仅仅包括字段名,还包括具体 定义为 数据库字段_操作符,例子:stud 在运行期间动态更改成为”=”等操作符 | 需要查询的操作(如TextBox控件中的tag属性我们便 entID_LIKE,直观,也很形象,并且LIKE操作符可以 ,实现精确匹配) |
| 整个DBForm的架构中, WinForm和WebForm,我们便 ,尽可能的增加整个系统开 递 | 要求能够有足够的支持弹性,当 采用了窗体数据的抓取和数据库 发的弹性,中间,采用FormInfo | 前的要求是希望能够同时支持好 相关Sql语句的生成相分离的方法 Entity类进行窗体数据的封装,传 |
| FormInfoEntity类中主要包含了Form 保存了提取出来的数据库字段以及对应得 及操作符号等等。JoinInfoList主要是要 | InfoList,JoinInfoList,其中FormInfoList中主要 用户输入信息,字段的类型(数值还是字符串),以 查询的表的连接信息。 |
| 在整个DBForm的编写中 加,删除的时候,也有很大 很轻松的工作,于是就给DB Sql生成类和窗体信息解析 | ,我发现,整个系统的架构不仅 的用处,只要提取出来了相关窗 Form扩展上了修改数据库的功能 类(用于修改的窗体信息和用于 | 仅使用与查询的情况,在修该,添 体的信息,Sql语句的生成是一件 ,整个工作也就是添加了相关的 查询的窗体信息描述不同) |
| 整个DBForm的构架比较 的xml文件,来自WebServic | 有扩展性,能够满足今后多种数 e中的相关查询等等 | 据来源的要求,比如说InfoPath中 |