Visual Studio 2008包含了一个文本模板转换工具箱,又称为T4,是领域特定语言工具的一部分,并可用于基于文本模板的方式来生成代码。
一个文本模板是一个包含文本块和控制逻辑混合物的文件。当你转换一个文本模板,控制逻辑结合了文本块与模型里的数据来生成一个输出文件。你可以用文本模板来生成文本的输出,例如代码文件和HTML报表。举个例子,用户界面的页面之间的流程控制的模型,例如向导界面,可以通过输入一个文本模板。文本模板可以生成流程控制的代码和配置文件。Scott Guthrie之前所宣布的ASP.NET MVC的功能之一就是使用T4来生成代码。参看InfoQ 的ASP.NET MVC中使用T4来生成代码,Scott建议使用T4来完成各种重复性的文本生成任务,即便它们与.NET无关:“如果您在公司里要把同一件事手动重复多遍,那么就让它自动生成吧。”
现在T4 将来到MonoDevelop上,MonoDevelop也是通过T4来支持ASP.NET MVC, 也就是Mono版的T4,参看Mono's Text Template Transformation Toolkit (T4)。
T4 Toolbox is a library of code generation templates for Visual Studio.
http://t4toolbox.codeplex.com/