关于C#中文本模板(.tt)的简单应用

转自http://www.it165.net/pro/html/201409/21789.html

  • 这两天做项目突遇 .tt文件,之前没有接触过,so查询学习做笔记,帮助记忆和后来者。

    在项目添加中点击选择文本模板

    下面贴出代码,做了简单的注释

    01.<#@ template debug="false" hostspecific="false" language="C#" #>

    02.<#@ assembly name="System.Core" #>

    03.<#@ import namespace="System.Linq" #>

    04.<#@ import namespace="System.Text" #>

    05.<#@ import namespace="System.Collections.Generic" #>

    06.<#@ output extension=".cs" #>   //生成的文件格式,文件名称同文本模板名称相同

    07.

    08.//正文

    09.<# var user_obj = new string [] {"Name""Age""Education"}; #>

    10.class AutoCreate

    11.{

    12.<# for(int i= 0; i< user_obj.Length ; i ++){ #>

    13.public static string <#= user_obj[i] #>;

    14.<# }#>

    15.}

    1.观察一下<#= #>这种输出格式和asp.net在页面上输出时写<%= %>是一个模式.

    2.<# context #>中的context就被编译器直接运行,而<# context #>之外的内容当做文本直接输出<br><br>

    Ctrl+S保存后,自动生成cs文件,很好很强大!

    THE END

时间: 2024-10-26 00:02:56

关于C#中文本模板(.tt)的简单应用的相关文章

一个简单的代码生成器(T4文本模板运用)

说要写这篇文章有一段时间了,但因为最近各方面的压力导致心情十二分的不好,下班后往往都洗洗睡了.今天痛定思痛,终于把这件拖了很久的事做了.好,不废话了,现在看看"一个简单的代码生成器" . 先看看界面吧! 简约到如此,说是代码生成器,估计是要被吐槽的.好吧,借用园子里博友的说法,这只是一粒粟子,如果你愿意,你能看到代码生成器的"种子". 这样运行的! 画了个简图已描述这个简单的代码生成器的工作过程.下面的介绍将以此图展开: 1)读取数据表的信息:从数据库中读取数据表的

C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(Entity Framework)的类名

转自:http://www.cnblogs.com/huangcong/archive/2011/07/20/1931107.html 在之前的文本模板(T4)初体验中我们已经知道了T4的用处,下面就看看如何用它来实现批量修改实体框架(Entity Framework)中的类名.我们都知道ADO.NET 实体数据模型中有一种方式是以数据库模型来生成数据模型的,这是个很简便的实体数据模型生成的方式,但是因为微软提供的自定义接口不足,我们无法实现对生成的数据模型实体类批量进行修改(至少我上网找了很久

编写 T4 文本模板

文本模板由以下部件组成: 1)指令 - 控制模板处理方式的元素. 2)文本块 - 直接复制到输出的内容. 3)控制块 - 向文本插入可变值并控制文本的条件或重复部件的程序代码. 指令: 指令是控制模板处理方式的元素,为模板转换引擎提供说明. T4文本模板指令包括:    T4模板指令:  T4参数指令:  T4输出指令:  T4程序集指令:  T4导入指令:  T4包含指令:  T4 CleanUpBehavior 指令及其自定义指令. 指令的语法如下所示: <#@ DirectiveName

T4模板之文本模板

网址:https://docs.microsoft.com/en-us/visualstudio/modeling/design-time-code-generation-by-using-t4-text-templates?view=vs-2017 T4模板在平时我们其实都会或多或少的遇到.最多的用在实体与数据库的映射上面. 这里只记录一下他的语法. 需要的插件:vs2017 T4代码高亮插件:Devart T4 Editor T4生成多文件:T4 Toolbox  (使用这个可以很好的生成我

T4文本模板转换过程

T4文本模板转换过程将文本模板文件作为输入,生成一个新的文本文件作为输出. 例如,可以使用文本模板生成 Visual Basic 或 C# 代码,还可以生成 HTML 报告. 有三个组件参与这一过程:引擎.宿主和指令处理器. 引擎对该过程进行控制(引擎与宿主和指令处理器交互),以生成输出文件:宿主提供与环境的所有交互(如定位文件和程序集); 指令处理器为文本模板添加功能(如从 XML 文件或数据库读取数据等). 组件: 组件 说明 可自定义(是/否) 引擎 引擎组件控制文本模板转换过程. 否 主

JSON、文本模板、HTML模板

JSON JSON是一种发送和接收格式化信息的标准.JSON不是唯一的标准,XML.ASN.1 和 Google 的 Protocol Buffer 都是相似的标准.Go通过标准库 encoding/json.encoding/xml.encoding/asn1 和其他的库对这些格式的编码和解码提供了非常好的支持,这些库都拥有相同的API. 序列化输出 首先定义一组数据: type Movie struct { Title string Year int `json:"released"

Velocity模板引擎的简单使用

一 简介 Velocity 是一个基于 Java 的模板引擎,它允许任何人仅仅简单的使用模板语言来引用由 Java 代码定义的对象,从而实现界面和 Java 代码的分离,使得界面设计人员可以和 Java 程序开发人员同步开发一个遵循 MVC 架构的 web 站点. 二 一个简单示例 (1)从官网下载最新的jar包,然后新建一个普通的Java工程,然后导入下载下来的zip文件中的jar包.当然也可以使用我用过的jar包,链接:http://pan.baidu.com/s/1PXu5g (2)新建一

JavaScript中String对象处理HTML标记中文本的方法

big():创建一个<big></big>标记,将这个字符串的字体变大blink():创建一个<blink></blink>标记,使字符串具有闪烁效果bold():创建一个<bold></bold>标记,使字符串加粗显示fixed():创建一个<tt></tt>标记,使字符串固定倾斜显示italics():创建一个<i></i>标记,使字符串以斜体显示small():创建一个<sm

Linux 系统中文本处理“三剑客”之grep

我们写脚本的时候,经常要截取命令输出的某项数据,比如:我要知道主机上有多少块硬盘 这是很方便的.使用grep搜索出我们想要的数据再使用 sed .或 cup 切割就可以取得我们主机的设备名称了,这是我们取数据的一种方法. Egreq 是grep 的升级版,支持扩展表达式.fgrep不支持正则表达式. 使用格式: 1 2 3 4 5 grep [OPTIONS] PATTERN [FILE...]      -o     只打印输出匹配到字符串      -i      做匹配时候忽略大小写