Database2Sharp之混合型Winform框架代码生成

本文介绍使用Database2Sharp代码生成工具快速构建混合型Winform框架的方法,该框架结合了传统Winform和WCF的优势,支持分布式服务调用,便于实现一个框架、多个应用的集成开发平台。

本人一直致力于Winform开发框架的研究和使用,有时候项目要求是传统Winform的,直接访问数据库进行获取数据;有的时候项目要求WCF框架,以分布式访问WCF服务获取数据的,虽然在Winform和WCF框架,都有特定的应用场景和开发思路,但是希望把这两种传统式的框架,加以抽象和提炼,形成目前所介绍的混合型框架,这样所有完成混合型框架改造的通用模块(或一个小业务模块),都能无缝式的实现集成使用。这种混合型框架的特点和优点都非常明显,为我最终实现,一个框架,多个应用的开发平台集成方案迈出坚实的一步。

1、混合型框架的应用前景

当然,本篇文章不是对理论的抽象说明,这一向不是我的风格,前面我已经在随笔《Winform开发框架之框架演化》、《Winform开发框架之混合型框架的实现》、《Winform开发框架之混合型框架的剖析》都对Winform框架的变种,混合型框架进行了比较详细的介绍,我希望通过实实在在的项目展示,介绍这种框架的优点特点,以及相关的设计理念。这种框架虽然比较通用,但相对于传统Winform框架和传统WCF开发框架,都增加了不少项目模块,也同时增加了一定的复杂度,如果纯手工来建立这种项目,会有比较麻烦的痛苦经历。

因此,本篇文件就是介绍了如何使用代码生成工具Database2Sharp来生成一个混合型框架的项目,由于我的Database2Sharp能够获取所有数据库的元数据,因此能够较好实现各种项目架构的生成操作,这种结合代码工具生成项目的方式,也是我们提高效率,统一代码风格,减少代码出错,提高代码健壮性,分享框架经验的最佳方式。

混合型框架可以看成是Winform框架高级版本,可以很好用来实现一个框架,多个应用的开发平台,我们可以在主体业务框架上,根据需要扩展很多应用,如通用模块有通用权限、通用字典、通用附件管理、通用人员管理。。。。,如果基于业务集成,那么可以把很多小业务也通过这种方式开发,然后通过即插即用的方式实现业务定制化的使用,这些应用都实现了这种混合型的框架,因此集成使用会非常方便。

 

2、代码生成工具生成混合型框架

混合型框架一般包括业务逻辑模块(包括BLL、IDAL、DAL、Entity层),服务接口调用模块(用来整合Winform和WCF接口调用),WCF服务逻辑模块、WCF服务发布模块,Winform界面模块共5个项目的分层,如下所示。

虽然是需要生成有5个项目的代码,而且每个项目之间还有一些特殊的引用以及各种命名规则,但是这些对于代码生成工具来说,都是很容易做到的事情。

代码生成工具,是结合数据库信息进行代码生成的过程,因此需要先获取对应数据库信息。

第一步,在Database2Sharp左边的树形数据库列表中,单击展开对应数据库的详细表,由于Database2Sharp是一次性加载方式,加载数据库表的信息同时,也会加载相关的视图、存储过程(Oracle、SqlServer)、以及表字段和表之间的关系等等信息。单击其中一个表,我们可以看到对应该表的字段信息,以及创建表的SQL语句,也就是我们常说的DDL脚本。 

 第二步,在数据库节点上,单击鼠标右键,选择【代码生成】- 【EnterpriseLibrary代码生成】菜单,开始生成代码如下所示。

第三步,选择相应的数据库以及数据库表,用于代码的生成。

第四步,设置相关的代码生成配置信息,包括项目主命名空间,输出目录,以及过滤表名前缀等。

第五步,确认代码生成操作,一般确认,就会对选定的表进行项目代码的生成操作,生成一体化的整体性解决方案。

如果项目是要生成基于WCF开发框架的,那么勾选“同时生成WCF服务项目”选项即可,勾选后,可以修改WCF服务的项目名称,方便创建不同的WCF业务项目。WCF项目是基于VS2010开发环境、.NET4.0框架的项目。

如果项目是生成基于混合型开发框架的,那么勾选“生成混合式框架项目”选项即可,勾选后,“同时生成WCF服务项目”也会默认勾选,因为混合型框架式基于Winform和WCF两种的混合体项目。WCF项目是基于VS2010开发环境、.NET4.0框架的项目,这是目前最优的配置信息了。

如果勾选生成后打开解决方案,那么代码生成完成后,就会自动打开项目工程,你可以尝试编译,一般情况下,可以完全编译通过的。

项目生成后,就生成了几个典型的项目分层结构,如图所示。

贴上几个详细的项目文件结构图,以便更好了解整体的项目结构。

 


代码生成工具的下载地址:http://www.iqidi.com/Database2Sharp.htm

详细的代码生成工具Database2Sharp的介绍文档:Database2Sharp代码生成工具-使用帮助.pdf

本文转自博客园伍华聪的博客,原文链接:Database2Sharp之混合型Winform框架代码生成,如需转载请自行联系原博主。



  深田之星Database2Sharp,是一个NHibernate、Castle-ActiveRecord、Enterprise Library和PetShop架构的C#代码和Java代码生成工具,提供了对MS Sql2000、MS Sql2005、Oracle、Mysql、Access的支持;可以生成各种架构代码,导出数据库文档、浏览数据库架构、查询数据、生成Sql脚本等。 主要的功能如下:   1、Castle的ActiveRecord代码生成功能,准确生成各种关系。   2、NHibernate代码生成,生成相应的实体类和HBM文件。   3、PetShop架构代码的生成(多种形式),直接生成所需的解决方案,为你封装了功能强大的基础类库和数据访问基类。   4、Web界面自动生成功能,生成列表、增加、修改界面代码和后台代码,包括烦琐的绑定数据和赋值语句代码,为你封装具有漂亮界面和布局的编辑、查看、添加和分页控件,随手可得,率性而为。   5、Enterprise Library代码生成,生成整个项目工程框架,包含实体类、数据访问类、业务类、Asp.net页面类,利用泛型及缓存机制,良好的架构极大简化代码,强大完善的基类使你甚至不用编写一行代码。   6、可以查看数据库的信息和实现查询分析器的功能,可以很快地看看数据库的信息。   7、实体类快速生成,提供各种常用的实体类代码生成,直接在窗体中显示,并用语法高亮显示,方便拷贝使用。   8、数据库文档的生成,在模块设计中非常有用,谁想去写描述和字段名称,类型的对应关系呢?   9、测试数据脚本的生成,在外键非常复杂的表中,我们想添加一条记录都是很容易哦,这个可以更加表的外键关系调整插入测试数据的顺序,很周到吧。   10、增加Select、Update、Insert和Delete基本语句代码的生成,方便您直接在代码中使用。 11、增加Java框架(Ibatis+Spring+struts+Extjs)代码的生成;添加Java实体类快速生成。 12、增加企业级别的界面自动生成,集成了标准、美观、统一的界面元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值