YbSoftwareFactory 代码生成插件二次开发IPlugInRepository接口的实现

 每个公司为加快项目的开发效率,都会使用一些成熟的框架或组件,然后在此基础之上进行开发。YbSoftwareFactory也可复用这些框架和组件,通过二次开发来开发一个代码生成插件,把大部分和框架有关的公共代码和组件封装打包压缩到项目文件中,而把和具体业务管理有关的需要变化的代码使用T4模板来生成。然后使用该代码生成插件来快速生成一个适合自身开发习惯的可立即运行的解决方案来提高开发进度,然后在此基础之上进行后续代码的二次开发。

    曾经的某公司用户在使用了YbSoftwareFactory来进行首个项目的辅助开发,原本计划28天的项目编码任务仅仅只用了3天,这3天的工作量也就是进行个性化的界面呈现调整和统计报表的制作,因为代码生成插件所生成的解决方案和代码已经集成了身份认证、权限管理、验证规则、日志输出等公共功能以及实体的增、删、查、改和导出个性化功能,工作效率的提高由此可见一般。

    前一篇文章已经介绍了怎样实现 IPlugInGroupRepository 接口来完成插件组的开发,本章则介绍插件二次开发的最后一项任务,即插件组内各个插件怎样实现 IPlugInRepository 接口来完成插件的二次开发。

    IPlugInRepository的实现类主要的职责就是完成代码的生成。 首先来看看IPlugInRepository的接口定义:

IPlugInRepository 接口定义

    下面将通过一个Demo来介绍接口下各个方法和属性的含义。

    一、元数据定义

View Code

    Name:将在Ribbion控件中显示的本插件的名称

    DisplayOrder:显示顺序

    ImageUri和LargeImageUri:将显示的个性化图标的URI路径,可参考上篇文章。

    CodeOutputMode:代码生成模式,File和Preview可选,File模式将生成代码文件,通常用于完整的解决方案的生成。Preview将显示预览的代码窗口,通常用于实体层、数据访问层、界面层等某一类的代码生成,生成的代码可预览、编辑并输出到文件。

     二、BeforeBuild方法

    本方法主要在代码生成前执行,主要可用于解压项目文件到指定路径,如你无这方面的需求可不用重写,传入的 arg 参数为文件路径。以下是某个具体的实现代码:

BeforeBuild 方法

    三、GetTemplateInfos 方法

    本方法返回本插件代码生成所需的模板信息记录列表,这些模板对象将供 YbSoftwareFactory 处理,代码示例如下:

GetTemplateInfos 方法

    四、BuildCodes 方法

    本方法为代码生成的核心代码,其中arg参数为一个表信息记录列表,templateInfos为模板信息,生成后的代码将保存到模板信息的“ExportContent”字段并返回。

BuildCodes 方法

    五、AfterBuild方法

    AfterBuild方法主要在代码生成后进行一些后续处理操作,你可利用该方法进行一些任务,如安装数据库初始化脚本等,示例代码如下:

AfterBuild 方法

    六、OnNotifyChanged方法

    该方法主要进行事件通知,在界面上显示滚动条等。

附下载地址:

    “Yb.PlugIn.CastleDevExpress.WebForm”插件源码下载

    附“Yb.PlugIn.CastleDevExpress.WebForm”代码生成插件的Demo数据库下载

     YbSoftwareFactory主应用程序下载

 

YbSoftwareFactory
 
YbSoftwareFactory 代码生成插件二次开发【三】:IPlugInRepository接口的实现

摘要: 每个公司为加快项目的开发效率,都会使用一些成熟的框架或组件,然后在此基础之上进行开发。YbSoftwareFactory也可复用这些框架和组件,通过二次开发来开发一个代码生成插件,把大部分和框架有关的公共代码和组件封装打包压缩到项目文件中,而把和具体业务管理有关的需要变化的代码使用T4模板来生成。然后使用该代码生成插件来快速生成一个适合自身开发习惯的可立即运行的解决方案来提高开发进度,然后在此基础之上进行后续代码的二次开发。 曾经的某公司用户在使用了YbSoftwareFactory来进行首个项目的辅助开发,原本计划28天的项目编码任务仅仅只用了3天,这3天的工作量也就是进行个性化的界面呈现调整和统计报表的制作,因为代码生成插件所生成的解决方案和代码已经集成了身份认证、权限管理、验证规则、日志输出等公共功能以及实体的增、删、查、改和导出个性化功能,工作效率的提高由此可见一般。阅读全文
posted @ 2012-05-05 14:59 YbSoftwareFactory 阅读(269) | 评论 (1) 编辑
 
YbSoftwareFactory 代码生成插件二次开发【二】:IPlugInGroupRepository接口的实现

摘要: 程序员得学会自我解放,YbSoftwareFactory就是这样一款解放程序员的利器,能让你更加专注于具体业务逻辑的实现,把自己从每日盲目的重复工作中解脱出来。能更有思想、更充分、更游刃有余地看待具体问题,而不仅仅是做一名水平低下的编码员。本章节开始将以一个Demo来重点介绍YbSoftwareFactory代码生成插件二次开发所需各个类的实现。 本章节将首先来看看“IPlugInGroupRepository”接口的实现类。阅读全文
posted @ 2012-04-29 11:49 YbSoftwareFactory 阅读(834) | 评论 (3) 编辑
 
YbSoftwareFactory 代码生成插件二次开发【一】:概述

摘要: YbSoftwareFactory,是一款使用.NET开发的软件代码智能快速生成平台,可方便、快速地生成各种应用程序代码。最新的2.0版支持插件式开发,可根据自身需要进行二次开发来生成能完全满足自身需要的任何代码。本系列将介绍了如何使用YbSoftwareFactory 2.0开发一套完全满足自身需求的代码生成插件的主要步骤和插件组成。阅读全文
posted @ 2012-04-26 19:23 YbSoftwareFactory 阅读(872) | 评论 (3) 编辑
 
YbSoftwareFactory 2.0(代码生成器)即将发布

摘要: YbSoftwareFactory,是一款使用.NET开发的软件代码智能快速生成平台,可方便、快速地生成各种应用程序代码。最新的2.0版对原1.0版进行了全新设计,支持二次开发。阅读全文
posted @ 2012-04-25 14:52 YbSoftwareFactory 阅读(383) | 评论 (5) 编辑
 
原文地址:https://www.cnblogs.com/Leo_wl/p/2485022.html