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

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

一. Hello,World!

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

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

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

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

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

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

二. 动态生成代码

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

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

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

小结:

好了,以上这2个小示例权当带大家入门哈,我会继续把文本模板的其他功能告诉大家的,请大家继续留意哈,如果觉得这篇文章还可以,请点一下下面的推荐哈~

转载于:https://www.cnblogs.com/huangcong/archive/2011/01/08/1930553.html

黄聪:C#代码生成工具:文本模板初体验 Hello,World!相关推荐

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

    转自:http://www.cnblogs.com/huangcong/archive/2011/07/20/1931107.html 在之前的文本模板(T4)初体验中我们已经知道了T4的用处,下面就 ...

  2. ASP.NET Core 3.0 上的gRPC服务模板初体验(多图)

    早就听说ASP.NET Core 3.0中引入了gRPC的服务模板,正好趁着家里电脑刚做了新系统,然后装了VS2019的功夫来体验一把.同时记录体验的过程.如果你也想按照本文的步骤体验的话,那你得先安 ...

  3. SciTE文本编辑器初体验

    SciTE文本编辑器初体验 1.简单设置SciTE文本编辑器 单击[Options]|[Open Global Options File] 打开SciTEGlobal.properties文件,做一些 ...

  4. 黄聪:php中utf-8模板获取GB2312编码页面传递URL中文编码转换方法

    $w='中文参数'; mb_convert_encoding($w, 'gb2312', 'utf-8') 转载于:https://www.cnblogs.com/huangcong/archive/ ...

  5. 高效数据序列化的工具 FlatBuffers 的初体验

    2019独角兽企业重金招聘Python工程师标准>>> 1. 背景 最近在项目中需要使用一种高效数据序列化的工具.碰巧在几篇文章中都提到了FlatBuffers 这个库.特别是 An ...

  6. python贴吧数据可视化软件_Python数据可视化工具之Pyecharts初体验

    前言 之前采集了我爱我家的13000多条租房信息,准备做下数据分析,也了解到Pyecharts这个可视化工具,于是上手试了一番 pyecharts 是一个用于生成 Echarts 图表的类库.Echa ...

  7. 腾讯内部测试软件,腾讯性能测试工具——PerfDog使用初体验

    官网地址:https://perfdog.qq.com/ 使用说明:https://perfdog.qq.com/support 测试机型:锤子坚果pro2s (前几天得知我浩哥上了老赖名单,现在看着 ...

  8. 二进制文件比较工具bindiff/diaphora初体验

    bindiff下载(独立工具+IDA插件) macOS https://dl.google.com/dl/zynamics/BinDiff4.3.dmg Windows https://dl.goog ...

  9. PHP Smarty 模板,php中Smarty模板初体验

    下面介绍一下Smarty模板引擎的特性: 1. 速度:采用Smarty编写的程序可以获得最大速度的提高,这一点是相对于其它的模板引擎技术而言的. 2. 编译型:采用Smarty编写的程序在运行时要编译 ...

最新文章

  1. touchstart与click同时触发
  2. 3.4 内置函数(1)
  3. 一个简单的samba案例(测试与思考)
  4. java 100个定时任务_Java定时任务解决方案
  5. Vue.js(2.x)之插值
  6. 淘宝爬登录、取个人资料、微博绑定、收货地址、支付宝绑定设置、安全设置等信息、购物车、收藏宝贝和店铺、个人积分、退款维权、我的足迹...
  7. 优麒麟安装qq (Ubuntu)
  8. ID卡、IC卡,RFID卡,NFC卡的简单介绍
  9. 【oracle】oracle筛选后导出表,载入对象选择,保存对象选择,save object selection的使用,过滤clob导出,利用osf文件
  10. Java常用英语单词(自己整理)(更新中...)
  11. main函数中的argc和argv
  12. Python3《机器学习实战》学习笔记(三):决策树实战篇
  13. C++ 用cout输出数字正负号的方法
  14. 半监督3D医学图像分割(四):SASSNet
  15. vue+echarts中国地图+省市级地图(全程教学,你也可以)
  16. Functional Programming For The Rest of Us 翻译,重译 (剩人们的函数式编程)
  17. 瑞萨电子中国董事长真冈朋光:助力汽车电子产业进入自动驾驶时代
  18. visual studio如何设置背景图片
  19. WPS2009在线存储终于来了
  20. 活用西瓜书——sklearn包中的神经网络分类器MLPClassifier的使用

热门文章

  1. 3.git版本控制-管理修改、撤销、删除
  2. could not initialize proxy - no Session
  3. 可动态扩展的数据库模型设计
  4. [3]MVC3中使用Telerik(转)
  5. 转 公有密匙 私有密匙
  6. 每天研究一个产品,阿德老师“手摸手”带你写产品分析报告 |
  7. 机器学习--聚类系列--层次聚类
  8. GIT常用的基础命令
  9. Centos:netstat or ifconfig 使用不了 最小化安装后无法联网
  10. OBIEE打补丁教程