zoukankan      html  css  js  c++  java
  • T4系列文章之2:T4工具简介、调试以及T4运行原理


    一、前言


    经过第一篇,我想大家现在对T4有了基本的印象,应该对T4有了一个大致的了解吧。现在,我们接着来讲一下T4的工具,然后下一篇我就开始T4的用法了。各位客官,就等了。



    二、工具介绍


    2.1 上图说话

    先不说,先来一张没有装工具的介绍,很平庸、很那个那个,看了很伤心:

    我没骗你们吧,是不是看了有点很默认的感觉?没错,我第一次也是这种感觉。后来我就在网上找啊找,找到了我要介绍的这款工具。在看看我使用这个工具的效果图,如下:

    你看,高亮语法,而且还有提示功能,爽歪歪。


    2.2 工具庐山真面


    如果你在VS 2010里进行编写 t4 模板语言,对不起,你每次打开都是那种没有高亮显示的那种效果,被VS 宠坏了的程序员,看到这样 心里肯定不舒服。

    【如下图animated-thumb.gif】很普通,没有高亮。第一次接触这个时候,心里真的非常不好受呢。

    其实说到这里,微软也真懒,你看她里面那么的C#、VB、XML、JavaScript啊等等什么,都实现了高亮提示,为什么就不对T4呢?哥表示强烈抗议。

    不过,抗议无效,还好的是有一位牛人开发了一款插件,可以很好的集成到VS里面去。

    下载地址:tangible T4 Editor plus modelling tools

    http://t4-editor.tangible-engineering.com/Download_T4Editor_Plus_ModelingTools.html

    只需要简单的填一下,就OK了,是免费的哦。

    主要的功能:

    1. 语法高亮显示
    2. T4中的指示符(directives)和代码快(code block)智能提示
    3. 对模板代码的智能提示
    4. 支持T4包含文件

    做的很牛X。

    下下来之后,是tangibleT4EditorPlusModellingToolsSetup.msi ,点击开始安装,这个木有问题吧。因为我用的是win7,所以会问一下安全性的问题:

    不理它,点击run。

    安装完了之后,你可以在你的“工具”→“扩展管理器”里去查看:

    打开之后 ,你可以看到一个T4 Editor 就是这个插件了。UML2Code,是我现在做的一个插件。呵呵。到时候 要是可行,我会放到园子里来。

    这个应该就真没多东西了。



    三、调试


    在T4里是没有像VS的C#调试那么简单,在左边设置一个调试点,然后点击运行就OK了。

    不过,也差不多吧!值需要的只是:<# Debugger.Break(); #> 把这个放到你需要调试的地方,等你运行的时候,就会自动的跳到这里啦。然后,你就可以看到你的内容,比如我在我的项目中调试中的结果:

    ,然后 安F10 行执行,F11是但不执行,都是一样的啦。



    四.T4的工作原理


    我在网上找了一张很好图,如下

    在这个第一步的时候,T4引擎编译这个模板文件:它会解析指令处理文件(也就是@开发部分)、文本文件和代码块,然后生成一个具体的TextTransformation 文件,接着会把这个类文件编译成.NET的程序集。

    第二步的时候,T4引擎会创建一个GeneratedTextTransformation 类的实例,它的名字叫做:TransformText的方法,这个方法的主要作用就是用来保存输出文件中放回的字符串。


  • 相关阅读:
    POJ 1251 Jungle Roads
    1111 Online Map (30 分)
    1122 Hamiltonian Cycle (25 分)
    POJ 2560 Freckles
    1087 All Roads Lead to Rome (30 分)
    1072 Gas Station (30 分)
    1018 Public Bike Management (30 分)
    1030 Travel Plan (30 分)
    22. bootstrap组件#巨幕和旋转图标
    3. Spring配置文件
  • 原文地址:https://www.cnblogs.com/itrena/p/7433823.html
Copyright © 2011-2022 走看看