C#代码生成工具:文本模板初体验 Hello,World!

简介:

C#代码生成工具:文本模板初体验 Hello World

在VS中的文本模板(也称T4),它给我有点CodeSmith的感觉,也是通过模板加逻辑代码混编批量生成代码的方法,但是关于T4的资料不多,而且对T4模板编写代码的时候智能感知也没有,不过还是介绍给一些可能用到它的朋友吧,下面就给几个简单的示例体验一下吧,当然要先从最简单的Hello,World!开始啦~

一. Hello,World!

1) 新建一个工程,在工程上右键--新建--文本模板,命名为NewTemplate.tt:

2011010812132532.jpg

2) 新建成功后,工程文件夹下将会生成如下2个文件:

2011010812231924.jpg

3) 双击NewTemplate.tt文件,有如下内容:

2011010812275532.jpg

4) 我们在这些文本下面添加一串字符串"Hello,World!",并保存:

2011010812292534.jpg

5) 这时双击工程管理器中的NewTemplate.txt,可以看到它已经有了如下内容,再打开工程目录下的NewTemplate.txt文件,也可以看到一样的内容:

2011010812325883.jpg

2011010812334057.jpg

哈哈,一个简单的Hello,World!就做好了,当然只有这点功能根本不值得搬上台面,下面就看看如何使用它来动态生成文本吧~

二. 动态生成代码

1) 在原来的文本基础上我们添加如下代码:

 
  
< # for ( int i = 0 ; i < 10 ; i ++ ) { # >
我是数字:
< # = i # > ,我的平方是: < # = i * i # >
< # } # >

2011010812380945.jpg

2.) 好了,再去看看NewTemplate.txt吧,可以看到如下内容,哈哈,是不是和CodeSmith很像啊?

2011010812392938.jpg

2011010812400951.jpg




本文转自黄聪博客园博客,原文链接:http://www.cnblogs.com/huangcong/archive/2011/01/08/1930553.html,如需转载请自行联系原作者
相关文章
|
2月前
|
自然语言处理 C# Windows
C#开源免费的Windows右键菜单管理工具
C#开源免费的Windows右键菜单管理工具
|
3月前
|
C#
C#读取txt文本的行数
C#读取txt文本的行数
35 0
|
24天前
|
存储 SQL 数据库
C# 将 Word 转文本存储到数据库并进行管理
C# 将 Word 转文本存储到数据库并进行管理
|
24天前
|
SQL C# 数据库
C# 读取多条数据记录导出到 Word 标签模板
C# 读取多条数据记录导出到 Word 标签模板
|
24天前
|
C# 开发工具 数据安全/隐私保护
C#实现基于Word保护性模板文件的修改
C#实现基于Word保护性模板文件的修改
|
5月前
|
缓存 开发框架 监控
一个C#开发的开源的快速启动工具
一个C#开发的开源的快速启动工具
42 0
|
3月前
|
存储 C# C++
C# 笔记2 - 数组、集合与与文本文件处理
C# 笔记2 - 数组、集合与与文本文件处理
44 0
|
3月前
|
存储 安全 算法
C# 泛型:类型参数化的强大工具
【1月更文挑战第7天】本文将深入探讨C#语言中的泛型编程,包括泛型的定义、用途、优势以及实际应用。通过类型参数化,泛型允许开发者编写更加灵活且可重用的代码,同时提高程序的类型安全性和性能。本文将通过示例代码和详细解释,帮助读者更好地理解泛型在C#中的重要性和实用性。
|
4月前
|
JSON C# 图形学
【Unity 3D】利用C#、Unity和Socket实现简单的在线聊天室工具(附源码 简单易懂)
【Unity 3D】利用C#、Unity和Socket实现简单的在线聊天室工具(附源码 简单易懂)
48 0
|
5月前
|
开发框架 自然语言处理 文字识别
一款C#开发的窗口文本提取开源软件
一款C#开发的窗口文本提取开源软件
45 2