TT文件的作用

摘要:
我一直觉得TT文件很神秘,我的同事也非常欣赏它的作用。单击“确定”,您将发现TextTemplate1.text丢失,并被TextTemplate1.cs文件替换,如下图所示。此时,您可以双击“TextTemplate1.cs”打开它,TextTemplate1./cs文件已自动生成以下内容,如图classMyGeneratedClass{privateintP1=0;privateintP2=0;private intP3=0;}神奇的效果归功于TextTransform exeT4在许多地方都使用,DataEntityModel是用T4完成的。CodePlex上有一个名为“T4TollBox”的项目,并且已经预先编写了通用模板

一直以来觉得TT文件很神秘,同事们对它的作用也大加赞赏。今天决定抽点时间了解一下它并偿试做一个简单的TT模板文件,通过Baidu锁定两篇较为适合像我这种从未接触过TT模板文件的菜鸟入门学习的文章:
1.T4模板使用-初探  http://www.cnblogs.com/xuf22/archive/2011/11/06/2238355.html
2.如何使用 VS2010 中的代码生成器 T4 - Text Template Transformation Toolkit  http://blog.sina.com.cn/s/blog_54cf61240100wlse.html

实操步骤:
1.新建一个Console应用程序MyTT
2.右击MyTT->添加(D)->新建项(W), 如下图

TT文件的作用第1张

点击“添加(A)”按钮,系统提示你“运行此文本模板可能损害您的计算机。…”点击“确定”后看到默认情况下这个模板文件中有六行代码并且TextTemplate1.tt文件下面多了一个TextTemplate1.txt的文件,如下图
TT文件的作用第2张TT文件的作用第3张

我们将 <#@ outputextension=".txt" #> 改为<#@output extension=".cs" #>

并加入以几行代码

<# var properties = new string []{"P1", "P2", "P3"}; #>

class MyGeneratedClass {

<#

foreach (string propertyName in properties)

{ #>

         privateint <#= propertyName #> = 0;

<# } #>

}

保存,再次出现系统提示你“运行此文本模板可能损害您的计算机。…”点击“确定”这时你会发现TextTemplate1.txt不见了,取而代之的是一个TextTemplate1.cs文件, 如下图

TT文件的作用第4张

这时你双击“TextTemplate1.cs”打开,TextTemplate1.cs文件已自动生成以下内容,如图

class MyGeneratedClass{

privateintP1 = 0;

privateintP2 = 0;

privateintP3 = 0;

}

TT文件的作用第5张

如此神奇的效果归功于TextTransform.exe(T4引擎的核心工具)。T4在很多地方用到,DataEntity Model就是用T4来完成的。在DataEntity Model中打开.tt文件,看到的就是T4引擎脚本,如果要修改DataEntity生成的类,可以通过修改.tt模板来修改。CodePlex上有一个名为”T4 TollBox“的项目,预先写好了常用的模板。

(完)

免责声明:文章转载自《TT文件的作用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇AI学习---数据IO操作&amp;amp;神经网络基础uboot学习之二----主Makefile学习之四----两种编译方法:原地编译和单独输出文件夹编译下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章