.NET 动态编译制作html代码生成器

需求:公司的业务平台完全为HTML静态页面,而这些html代码为维护人员后台编辑后提交的。但是,例如产品列表等这样的代码,每次都需要手动的编辑,耗时耗力,因此,需要有个html代码生成器能够将一些常用的代码按照特定的规则进行记录。只要输入例如:产品编号、或分类名称就能得到相应的列表代码。

 

分析:如果仅完成这个工作,应该说非常容易,不就是在.net 中提供一个方法,将需要的参数传入,返回对应的字符串即可。但是,业务部门有时候都需要对代码进行各种修改编辑,当然也不会立刻把所有想的到的代码范例都找出来给你。总不能想出一个,就要你修改一个,然后还要更新程序吧。另外,每种录入也都需要对应的界面UI来支持,单独对每个方法做一个UI,只有录入项不同,实在费时费事。

 

因此,我首先想到的是asp编程模型,在asp编程中,所有的代码都包含在<%%>里。只要加入程序逻辑,即可输出一段html来。所以,我想,如果能够自己写这样一个解释执行的库,然后维护人员只需要按我们的规则来写生成代码脚本,这样的话,再个性的代码也可以由业务人员来维护了。不过,查阅了很多资料,开发起来挺难啊。问了一个朋友提供建议,使用.net 的动态编译,问题随之解决,而且业务人员只需要熟悉简单的c#语法,就可以进行维护。

 

动态编译的代码:

 

通过如上代码,即可实现对传入的字符串进行.net 编译,然后返回结果字符串。

 

第二步,开始构建一个可执行的方法,能返回结果字符串:

 

以上代码为函数体,公用的类名和空间名都写在一个template里。因此,业务维护的人只需要修改函数体。

 

第三步:构建UI代码

第四步:然后就是将这样的结构存入数据库中。

表结构:rowid | uicode | code

 

结论:维护人员在想用一种代码代码时,可以自己编辑UI,然后编写执行代码,随时可以进行调整,增加。如果有编译错误,也可以自行修改完成。不需要更新DLL了。也只用一个ui模板页面,就可以实现自定义的录入界面。

 

后续:我们还需要做一些完善,提供一个运行支持库,让ui模板和后台执行更方便快捷, 这里,ui代码我通过正则表达式提供了类似函数的调用。例如:$Category(cateid,0)$ ,就可以将得到录入类别的下拉列表。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
asp.net 代码生成器 【基本说明】 1、能够生成三层模式操作的所有后台代码,简单的SQL Server 2005数据库操作。 2、生成的代码包括了 MODEL、BLL、DAL、DBHelper、Config 生成的代码内有详细注释可提供参考。 3、提供数据库增、删、改、查、分页及其事务,并提供多种重载方式。 4、所有数据表必须有主键且主键是第一列,这个主要是为了保证获取记录和分页获取的统一性,其实可以取消这个规则。 5、建议新建App_Code文件夹将生成的C#代码放里面。见此文件夹直接拷贝到项目下既可以使用。 6、不保证所提供软件或程序的完整性和安全性。 7、请在使用前查毒 (这也是您使用其它网络资源所必须注意的) 。 8、《Coder.NET代码生成器》需要.Net FrameWork2.0运行环境,基于SQL Server 2005使用。 9、如无法运行本软件,请下载并安装由微软公司提供的.Net FrameWork2.0系统. 10、如果您在使用过程中遇到程序问题或建议请于我联系我的Email是 mailto:liangaspx@163.com。 11、如需要源码与我联系 李亮 QQ:542529107 或登陆 http://liliang119007.download.csdn.net/下载更新版本。 【生成单表代码】 输入数据库名(Server)登录名(Name)密码(Pwd),连接后选择库名(Database)表名(Tables), 之后单击'生成单表代码'新建App_Code文件夹将生成的C#代码(ASP.NET后台代码)放里面。 【生成三层工厂模式项目】 (1)B/S架构(ASP·NET): 输入数据库名(Server)登录名(Name)密码(Pwd)连接数据库成功后直接点生成整个项目选择路径确定就好了。 (2)C/S架构(Windows应用程序): 输入数据库名(Server)登录名(Name)密码(Pwd)连接数据库成功后直接点生成整个项目选择路径确定, 生成项目后打开该项目解决方案将表示层删掉, 再单击vs的(文件→添加→新建项目→选择Windows应用程序),这样就生成C/S架构的程序了! 程序员:李亮 更新日期:2010-5-17
【基本说明】 1、能够生成三层工厂模式操作的所有基本代码,简单的数据库操作。 2、生成的代码包括了 MODEL、BLL、Factory、IDAL、DAL、DBHelper、Config 生成的代码内有详细注释可提供参考。 3、提供数据库增、删、改、查、分页及其事务,并提供多种重载方式。 4、所有数据表必须有主键且主键是第一列,这个主要是为了保证获取记录和分页获取的统一性,其实可以取消这个规则。 6、建议新建App_Code文件夹将生成的C#代码放里面。见此文件夹直接拷贝到项目下既可以使用。 7、不保证所提供软件或程序的完整性和安全性。 8、请在使用前查毒 (这也是您使用其它网络资源所必须注意的) 。 9、《Coder(ASP.NET代码生成器)》需要.Net FrameWork2.0运行环境,基于SQL Server 2005使用。 10、如无法运行本软件,请下载并安装由微软公司提供的.Net FrameWork2.0系统. 11、如果您在使用过程中遇到程序问题或建议请于我联系我的Email是 mailto:liliang119007@163.com。 【生成单层代码】 输入数据库名(Server)登录名(Name)密码(Pwd),连接后选择库名(Database)表名(Tables) 之后单击'生成单层代码'新建App_Code文件夹将生成的C#代码(ASP.NET后台代码)放里面, 【生成三层工厂模式项目】 (1)B/S架构: 输入数据库名(Server)登录名(Name)密码(Pwd)连接数据库成功后直接点生成整个项目选择路径确定就好了。 (2)C/S架构: 输入数据库名(Server)登录名(Name)密码(Pwd)连接数据库成功后直接点生成整个项目选择路径确定, 生成项目后打开该项目解决方案将表示层删掉, 再单击vs的(文件→添加→新建项目→选择Windows应用程序),这样就生成C/S架构的程序了!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值