写点什么

Visual Studio 2008 的文本模板转换工具箱

  • 2008-04-20
  • 本文字数:771 字

    阅读完需:约 3 分钟

Visual Studio 2008 包含了一个文本模板转换工具箱,又称为 T4,是领域特定语言工具的一部分,并可用于基于文本模板的方式来生成代码。T4 也用于 Visual Studio 2005 的 DSL GAT 工具箱。

根据 MSDN 的描述:

一个文本模板是一个包含文本块和控制逻辑混合物的文件。当你转换一个文本模板,控制逻辑结合了文本块与模型里的数据来生成一个输出文件。你可以用文本模板来生成文本的输出,例如代码文件和 HTML 报表。举个例子,用户界面的页面之间的流程控制的模型,例如向导界面,可以通过输入一个文本模板。文本模板可以生成流程控制的代码和配置文件。

一个文本模板有一个文本模板文件作为输入,转换文本模板,并输出一个文本文件的转换过程。转换的过程有两个步骤。第一个步骤是 T4 的引擎使用文本模板生成一个临时的转换类。 第二个步骤是 T4 的引擎编译转换类为一个程序集并执行该代码,以产生了输出文本文件。

“Hello World!”的例子看起来是这样的:

<#@ template language=“C#” #>
<# Write(“Hello World!”) #>

文本模板可以包含 Visual Basic 中或 C#代码,如果没有特别指定,C#是默认的语言。 输出指令是用来指定生成的文本文件的类型。有很多种输出文件类型,其中最常用的几种是.html、.txt、.cs、.vb。默认的输出文件类型是.cs。下面是一个如何使用输出指令的例子:

<#@ output extension=".html" #>

Visual Studio 对编辑文本模板提供了有限的支持。Clarius 咨询公司有一个免费的编辑器,对T4 的模板提供了不同部分的颜色区分,智能提示和设计时预览的支持 。 Visual Studio 的支持文本模板和转换的过程中的调试,但它不是直接的支持。详细的如何调试可以在 MSDN 上找到 ,Gareth Jones 提供了一个简短的教程。Oleg Sych 发表了一篇 关于T4 的文章。更全面的MSDN 文档在这里

查看英文原文: Text Template Transformation Toolkit in Visual Studio 2008

2008-04-20 20:182445
用户头像

发布了 45 篇内容, 共 73261 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

2020-06-13-第二周作业

路易斯李李李

依赖倒置

wei

第二周总结

跨域刀

极客大学架构师训练营

架构师训练营第二周学习总结

王权富贵

极客大学架构师训练营

架构师Week2作业

熊威

Week2作业

王志祥

极客大学架构师训练营

第二周作业

Geek_2b3614

ARTS 02 - 解决 Jenkins 中使用代理来执行 npm install 的问题

jerry.mei

算法 大前端 练习 ARTS 打卡计划 ARTS活动

架构师训练营第二周【作业】

atlasman

架构师第二周作业

跨域刀

极客大学架构师训练营

学习心得

蒜泥精英

架构师训练营 第二周【作业】

小K

架构师实现架构目标的主要手段(第2周学习总结)

李德政

极客大学架构师训练营

设计模式中的依赖倒置原则和接口隔离原则

dongge

架构师训练营 -week2- 学习总结

暖丶冬

学习总结 - 架构师训练营 - 第二周

走过路过飞过

第二周 - 学习总结

molly

极客大学架构师训练营

架构师第二课总结

Dennis

架构师训练营第二章作业

吴吴

架构师训练营第二周作业

草原上的奔跑

架构师训练营-第二周作业

清风徐徐

单例模式 极客大学架构师训练营 组合模式

设计原则之依赖倒置与接口隔离

L001

架构是训练营

Python 核心技术与实践 string

Bonaparte

Python string

架构师训练营 - 第二周作业

teslə

第二次作业

蒜泥精英

架构师训练营Lesson2-Homework

强哥

极客大学架构师训练营 依赖倒置

架构师训练营 - 第二周学习总结

清风徐徐

架构学习第二周总结

乐天

架构师训练营第二周学习总结

fenix

<<架构师训练营>> 第二周作业

R20114

依赖倒置原则&接口隔离原则优化Cache类

高程

架构师 作业 week2

Visual Studio 2008的文本模板转换工具箱_.NET_Abel Avram_InfoQ精选文章