我们回顾一下上一节的内容:我们利用CodeSmith Explorer了解了模板文件的基本构成。
下面我们就利用CodeSmith模板来生成一个代码:
1.生成代码
当你按照前一节的步骤来做,那么现在你已经为生成我们的第一个模板代码做好了一切准备了。接下来你就可以按下模板属性页下面的生成按钮,CodeSmith会提取你输入的属性并把他们融合到生成的代码里面。接下来你可以使用Ctrl+C轻松的复制生成的代码了。
![]()
如图所示,代码窗口中包含了320行hash表类代码,植入了IDictionary, ICollection, IEnumerable, and ICloneable接口。如果你是有经验的开发者的话,那么你肯定知道如果这些模板都是既定不变的写死了的话,那肯定是最让人头痛的事情。而CodeSmith 之所以是最理想的工具就在于你可以生成你自己的模板,这就确保了以后使用模板足够的灵活性。一切都是那么符合一个程序员的心意。
2.了解模板结构
接着让我们来看看CSHashTable.cst 模板代码。如图所示,模板包含了CodeSmith 用于生成代码的结构。回到CodeSmith Explorer,在模板上点击鼠标右键选择编辑。将启动CodeSmith Studio打开模板进行编辑。
![]()
在接下来的章节你将了解到更多关于的细节。而现在,你仅仅对CodeSmith有了一点泛泛的了解,其次,你是不是已经发现CodeSmith模板语言和ASP.NET非常相似?以一些定义符作为开始,包含一些属性的声明。这些属性将在后面的代码中使用到。例如在模板中有这样一行:
以下一些步骤是你使用CodeSmith生成模板所必须做的:
(1)启动CodeSmith Explorer
(2)选择模板
(3)输入属性值
(4)生成代码
好了,我们第一个模板代码就生成了!
下面我们就利用CodeSmith模板来生成一个代码:
1.生成代码
当你按照前一节的步骤来做,那么现在你已经为生成我们的第一个模板代码做好了一切准备了。接下来你就可以按下模板属性页下面的生成按钮,CodeSmith会提取你输入的属性并把他们融合到生成的代码里面。接下来你可以使用Ctrl+C轻松的复制生成的代码了。
如图所示,代码窗口中包含了320行hash表类代码,植入了IDictionary, ICollection, IEnumerable, and ICloneable接口。如果你是有经验的开发者的话,那么你肯定知道如果这些模板都是既定不变的写死了的话,那肯定是最让人头痛的事情。而CodeSmith 之所以是最理想的工具就在于你可以生成你自己的模板,这就确保了以后使用模板足够的灵活性。一切都是那么符合一个程序员的心意。
2.了解模板结构
接着让我们来看看CSHashTable.cst 模板代码。如图所示,模板包含了CodeSmith 用于生成代码的结构。回到CodeSmith Explorer,在模板上点击鼠标右键选择编辑。将启动CodeSmith Studio打开模板进行编辑。
在接下来的章节你将了解到更多关于的细节。而现在,你仅仅对CodeSmith有了一点泛泛的了解,其次,你是不是已经发现CodeSmith模板语言和ASP.NET非常相似?以一些定义符作为开始,包含一些属性的声明。这些属性将在后面的代码中使用到。例如在模板中有这样一行:
namespace <%= ClassNamespace %>
在类命名空间“namespace”后面紧跟属性名称。
如果你不喜欢CSHashTable模板,你完全可以按照你的想法修改它。例如,你可以加一些对接口的注释。记得做好改变以后点击保存。
3.回顾
以下一些步骤是你使用CodeSmith生成模板所必须做的:
(1)启动CodeSmith Explorer
(2)选择模板
(3)输入属性值
(4)生成代码
好了,我们第一个模板代码就生成了!