写点什么

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:183025
用户头像

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

关注

评论

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

区块链互操作性:大规模应用的关键

CECBC

一叶红船见百年!百度大脑助力南湖红船泛起国人心中红色情怀

百度大脑

云计算还有多久能够替代高性能计算?

北鲲云

重磅!不容错过的阿里内部微服务速成手册也太赞了(2021版)

Java 程序员 面试 java编程

第一周作业

Morphling

#架构实战营

为了对抗内卷,我“偷”了阿里两份笔记:JDK源码+Java并发图册

Java架构师迁哥

入职腾讯一周年了

程序员鱼皮

Java 腾讯 大前端 实习 校招

算法面试通关

buchila11

面试

InnoDB存储引擎-锁

CodeWithBuff

MySQL innodb

《持之以恒的从事运动》三

Changing Lin

模块一作业

lhp

架构实战营

[架构实战营][模块一作业]

KK_TTN

#架构实战营

【架构实战营1期】模块一作业

Abner S.

架构实战营 #架构实战营

当法律纽带变成“机器红线”,能让自动驾驶汽车更安全吗?

脑极体

RedHat7.2 切换yum源记录

Bruce Xiong

redhat yum源

程序员外包避坑指南?

孙叫兽

程序员 外包

一文掌握OLAP和DataCube数据魔方应用

白贺BaiHe

OLAP BI 数仓 7月日更 DataCube数据魔方

辞职1000小时后,我走进字节跳动拿了offer

Java 程序员 面试 java编程

5分钟速读之Rust权威指南(三十六)模式匹配

wzx

rust

中层管理者挖掘需求的七大法宝

石云升

读书笔记 需求 职场经验 管理经验 7月日更

CODING 助力推进腾讯游戏国际化进程

CODING DevOps

DevOps 开发工具 腾讯游戏 软件研发

就是它,帮我斩获了8家大厂offer,由于太全被各大厂要求Github连夜下架

Java架构师迁哥

人民网发文:区块链如何跨越未来10年

CECBC

关于数据安全

奔向架构师

大数据 数据安全

关于胖指针的应用

老实人Honey

架构实战营

Redis 高级特性

QiLab

redis

数字货币大趋势,DC EP出征,带老百姓进入新时代!

CECBC

Java 8 新特性

Bf-Bus

数据准备的能力,决定企业AI研发的边界

百度大脑

人工智能

模块一作业:微信业务架构图和毕设架构设计

Felix

从零开始构建企业级推荐系统(二十九)

Databri_AI

产品 推荐系统

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