分类

  • 软件天地

  • 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中



    上一页 下一页




    map