CodeSmith是一个基于模板的代码生成器
CodeSmith是一个基于模板的代码生成器。
模板是所生成代码的式样。
开发者或构架师可应用CodeSmith来生成任何文本语言的代码。
其结果(生成的代码)可通过属性来自定义并包含在众多的标准属性类型之中。
另外,用户还可建立自定义的属性类型。
针对.NET Framework而言,性质可以是任何拥有设计器的.NET对象。
例如,它可以是一个简单的分配标题的字符串性质。
另一方面,可用TableSchema对象来访问数据库表中的一切内容。
CodeSmith工具的一个强项是它的语法,其与ASP.NET的方法相当。
实际上,你可以在CodeSmith模板中应用C#、VB.NET或Jscript。
事实上,CodeSmith可输入任何ASCII语言。
CodeSmith 包括两个工具,一个是CCodeSmithStudio.exe是用来设计和编译模板;另一个是CodeSmith.exe是用来运行模板生成代码的, CodeSmith.exe还可以与VS.NET集成,成为VS.NET的一个外部工具。
以下是对CodeSmith实现原理的简略概述:
1、支持执行代码块语法 ,与 语法一模一样
2、支持内联表达式语法 ,与 语法一模一样
3、 支持Code Behind功能(,与 的()类似
4、 支持 函数代码块功能, 与的函数代码块功能 类似
5、支持属性申明,用于配置模板的属性. 语法不支持.
CodeSmith入门教程之快速设置向导
CodeSmith快速向导
本文档的目的就是让你尽快得知道怎么通过CodeSimth从一个集合中产生你需要的完整程序。
在本CodeSmith快速向导里,我打算教你使用CodeSmith自带的模版,如何创建一个模版以及CodeSmith如何创建一个数据
库驱动模版。
CodeSmith 是一种基于模板的代码生成工具,CodeSmith使用类似于ASP.NET 的语法来生成任意类型 的代码或文本。
与其它许多代码生成工具不同,CodeSmith 不要求你订阅特定的应用程序 设计或体系结构。
借助CodeSmith 可以生成包括简单的强类型集合和完整应用程序在内的代码。
CodeSimth是一个基于模版基础的代码生成工具,CodeSmith通过使用一个类似的语法你可以创建和
定义一个用于产生代码的模版。
你应该知道的一个重要的事情是:CodeSimth产生的代码是文本的,
因此你可以用CodeSmith产生那些你没有必要编写的其他语言的代码或者文本。
在看如何创建你自己的模版之前,让我们先用下CodeSmith自带的模版.你可以通过:开始->程序->
CodeSmith->CodeSmith Explorer 来启动CodeSmith Explorer.启动后的界面如下图所示:
CodeSmith Explorer用来现实你可以使用的模版;默认的示例模版是被载入的。
许多常用的模版在集合顶部,
双击ArArrayList.cst模版打开,将看到如下图所示:
这是一个模版属性面板,你可以查看和指定多个模版的属性。
对于ArrayList模版我们需要指定我们想创建的
ArrayList的名称和我们想存储在ArrayList内item的类型。
(我们也可以随意指定一个命名空间以使用ArrayList)本
例子里我们指定CarList作为ClassName,Car作为ItemType.添好属性之后单击Generate,模版将为你生成一个强类型
的ArrayList。
(译者注:我的CodeSmith v 2.6 professional 版点了Generate后没反应,你可以到CodeSmith Studio 里面试)
右面的窗口显示了使用为Car类生成一个强类型ArrayList模版后的输出结果,
接着你可以把他拷贝和复制到Visual Studio总,或者其他你用的编辑器中编译它。
(译者注:我的CodeSmith v 2.6 professional 版 点了Generate后没反应,你可以到CodeSmith Studio
里面试。
开始-〉程序->CodeSimith v2.6->CodeSmith Studio,
右边面板,展开Collections->双击ArrayList.cst,填入
下面Properties面版里面的ClassName和ItemType值.->
点工具栏里的运行(小三角形))
实在不知道看这个 /ancel%5Fzy/blog/item/eb7036356dc5ab3d5bb5f5a4.html
里面是上面的后续部会
视频好像没有
提速啦 成立于2012年,作为互联网老兵我们一直为用户提供 稳定 高速 高质量的产品。成立至今一直深受用户的喜爱 荣获 “2021年赣州安全大赛第三名” “2020创新企业入围奖” 等殊荣。目前我司在美国拥有4.6万G总内存云服务器资源,香港拥有2.2万G总内存云服务器资源,阿里云香港机房拥有8000G总内存云服务器资源,国内多地区拥有1.6万G总内存云服务器资源,绝非1 2台宿主机的小商家可比。...
Megalayer 商家算是比较新晋的国内主机商,主要方向是美国、香港、菲律宾等机房的独立服务器为主,以及站群服务器和显卡服务器。同时也有新增价格并不是特别优惠的VPS云服务器。上午的时候有网友问问有没有CN2线路的美国独立服务器的,这里我推荐他选择Megalayer看看,目前也是有活动截止到月底的。Megalayer 商家创办2年左右时间,如果我们初次使用建议月付体验。目前在进行且可能截止到6月...
profitserver正在对德国vps(法兰克福)、西班牙vps(马德里)、荷兰vps(杜廷赫姆)这3处数据中心内的VPS进行5折优惠促销。所有VPS基于KVM虚拟,纯SSD阵列,自带一个IPv4,不限制流量,在后台支持自定义ISO文件,方便大家折腾!此外还有以下数据中心:俄罗斯(多机房)、捷克、保加利亚、立陶宛、新加坡、美国(洛杉矶、锡考克斯、迈阿密)、瑞士、波兰、乌克兰,VPS和前面的一样性...