动态数据生成解决方案
实现原理:
网页:使用StreamReader读取模板,替换里面的关键词,用 StreamWriter生成新页。
程序:使用类Codedom生成程序文件。
实现:具体如下
输入数据库名,用户名和密码进入系统。程序使用Form验证,所有未经过验证转到此画面。
Web.config配置如下:
以下是数据库服务名,可以为IP地址。WUSF\DAT为我的数据库所在的服务器名称。
数据验证成功后转入程序生成画面,显示所有用户具有权限的数据库和对应的表,此部分功能涉及到相关SQL语句及程序如下。
SQL:
C#:
生成网页及对应程序代码如下:
范本页:
AddTemplet.config
生成檔C#代码:
生成后档及代码:
Aspx:
CS:
图片如下:
技术要点:生成网页文件很简单,关键是生成程序代码,Codedom的使用。
项目总结:实际上开发这样的程序并无实际上的意思(除非简单的数据操作),在实际的项目中,有很复杂的商务逻辑及页面布局。在代码生成方面比较有实际的意义,Codedom不仅可以生成代码,还可以动态编译成exe,dll/。网络上已经有很多代码生成工具,像CodeSmithStu就很不错。