当前位置:Gxlcms > 数据库问题 > 代码生成工具Database2Sharp的架构介绍

代码生成工具Database2Sharp的架构介绍

时间:2021-07-01 10:21:17 帮助过:26人阅读

 技术图片

 

 4)工具界面向导功能介绍

 代码生成工具里面,我们生成代码的时候,一般需要选择哪个库,然后选择表,以及一些配置项,才能进行代码的生成,这个是一个配置向导的功能,主要是基于Microsoft.ApplicationBlocks.UIProcess 组件进行的一个动态配置(UIProcess是微软早期的一个界面管理组件),它是读取配置文件进行的界面处理。如下面是App.config配置文件的内容。

技术图片

其中每个View代表一个配置一个向导界面,如SelectDatabaseView,它对应一个控制器SimpleController。

另外,配置文件的navigationGraph是一个配置型的导向,主要配置我们处理的场景,详细配置如下所示。

 技术图片

和这些导航图的配置信息对应,我们代码生成工具也需要提供对应名称的窗体,如下图所示。这些窗体就是我们操作某个代码生成过程的操作界面,如选择数据库界面,选择表界面,确认生成功能界面等。

 技术图片

技术图片

 另外配置文件里面会定义我们一组处理的导航窗体,用来构建我们一个业务场景,如EnterpriseLibrary架构代码生成操作。

 技术图片

然后我们在界面需要定义一个按钮,实现这个代码生成功能的时候,只需要调用这组视图的名称即可,如下代码所示。

技术图片

这样启动后,整个处理导航逻辑就会按照配置文件的顺序一个个调用界面,最后统一生成代码即可。

5)自定义模板代码生成

代码生成工具是基于比较有名的NVelocity模板进行代码文件生成的,因此熟悉NVelocity语法可以修改模板,以适应需要,生成不同内容的文件。

除了可以利用NVelocity模板语法,实现变量定义或者赋值、控制逻辑处理等功能外,还可以利用模板和后台变量进行交互处理。

模板引擎的后台控制规则是在代码生成工具里面封装的,因此可以在NVelocity模板文件里面访问对应的数据库对象,选择的表对象、字段信息等元素内容,或者访问自定义的变量。

基于模板方式的代码生成方式,可以提高生成效率,并且减少维护成本(相对某些硬编码代码生成的方式更优),方便用户对模板进行适当的修改等特点。

关于NVelocity模板语法,详细介绍可以参考伍华聪博客《强大的模板引擎开源软件NVelocity》随笔。

在实际开发当中,自定义模板生成是很多代码生成工具生成代码的重要补充,例如有些项目代码片段需要(例如控件赋值语句,或者控件数据显示语句等),如果能通过自定义模板方式,利用模板引擎的灵活特点,以及已有数据库的结构信息,就很方便生成重复性强、有一定规律的代码。

技术图片

用【选表进行代码生成】方式,可以很好利用后台的数据库表、字段等信息,结合模板生成高效的代码。

 另外,为了方便大家对模板引擎NVelocity的了解,在软件工具安装的时候,附带了几个常见的例子,如下所示。

技术图片

例子的代码大致如下所示,主要是让大家快速了解Nvelocity的模板语言VTL的使用。如果对模板引擎更加深入的了解,可以查看我之前的随笔《强大的模板引擎开源软件NVelocity》进一步了解。

技术图片

 转自:https://www.cnblogs.com/wuhuacong/p/10967935.html

代码生成工具Database2Sharp的架构介绍

标签:经历   码代码   一个   窗体   process   项目结构   控件   高效   多个   

人气教程排行