西红柿小生|Winform界面开发中的困境及解决方案( 二 )


西红柿小生|Winform界面开发中的困境及解决方案有了这些标准的展示效果 , 我们就可以参照这些 , 使用代码生成工具辅助页面内容的生成的了 , 生成规则以数据库元数据为参考即可 。
四、界面基类和辅助类的处理我们以常规业务模块界面来分析 , 主要有明细查看或编辑界面、列表界面 , 那么这些界面为了方便使用 , 我们可以抽象一部分界面处理逻辑或者共有部分内容 , 放在界面基类BaseEdit或者BaseDock等基类里面 , 如下界面所示 。
西红柿小生|Winform界面开发中的困境及解决方案尽可能把一些涉及到业务数据的处理通用规则放到基类 , 而变化部分则在子类进行处理即可 。 这样可以简化生成界面的代码 , 以及提高可重用率 , 减少维护的难度和代码臃肿 。对于一般的业务系统 , 可能都会涉及到不同数据库的使用 , 如SQLServer、Oracle、Mysql、PostgreSQL等数据库 , 那么这部分 , 可以通过使用微软企业库或者其他ORM方式进行处理 , 以实现系统对多种数据库的良好支持 。
五、代码生成工具辅助开发通过上面的介绍 , 通用部分作为模块独立使用 , 业务模块的界面主要划分列表和编辑查看界面两部分 , 而各自又进行了一定的基类抽象处理 , 那么相对来说已经简化很多了 , 不过对于业务数据来说 , 我们还是需要做很多重复性的工作 , 如界面显示、界面赋值及调用接口处理等操作 , 这些对业务对象固定的话 , 其实也是规则类似的 , 那么这部分我们结合代码生成工具进行批量生成即可 , 生成后进行一定的微调 , 可以极大降低出错的几率 , 减少代码的编写量 。
在我们开发软件的时候 , 解决方案项目基于一定的分层组织 , 每个项目分层中 , 各个类的关系也是确定的 , 借助辅助工具(结合模板引擎)可以快速生成我们所需要的代码 , 并极大提高我们软件的开发效率 , Database2Sharp代码生成工具就是一款专门针对我们自己框架结构配套的开发工具 。
Database2Sharp代码生成工具 , 主要是基于数据库提取的元数据信息 , 根据表的信息和关系 , 字段信息等内容 , 生成我们框架所需要分层的类代码 。
对于Winform开发 , 可以根据Winform框架或者混合框架的窗体界面类 , 生成标准的界面代码 , 列表界面默认具有分页查询、导入导出、高级查询、编辑、删除事件绑定 , 编辑界面则具有获取数据并显示在控件 , 保存后执行更新或者写入的操作 。
西红柿小生|Winform界面开发中的困境及解决方案
西红柿小生|Winform界面开发中的困境及解决方案
西红柿小生|Winform界面开发中的困境及解决方案六、其他除了前面介绍的部分外 , 一般大的方面 , 我们还可以以业务方式做一些独立的组件模块 , 以方便重复使用 , 这个是大的方面 。 模块化 , 一般需要构建好对应的框架架构 , 每个独立的模块 , 都是遵循统一的框架架构方式处理 , 可以极大提高代码的开发效率和降低维护的难度 。 Winform开发架构如下所示 。
西红柿小生|Winform界面开发中的困境及解决方案而对于混合方式的Winform开发 , 那么还设计Web API模块的部署 , 以及客户端对Web API调用的封装 , 如下所示 。


推荐阅读