TT文件的作用

一直以来觉得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), 如下图

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

我们将 <#@ 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文件, 如下图

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

class MyGeneratedClass{

privateintP1 = 0;

privateintP2 = 0;

privateintP3 = 0;

}

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

(完)

posted @ 2014-04-24 09:05  简单的执着_俊  阅读(2306)  评论(0编辑  收藏  举报