(转)使用T4模板批量生成代码
2013-04-09 14:29
411 查看
原文地址:http://www.cnblogs.com/K_tommy/archive/2013/04/06/T4.html
获取MultipleOutputHelper.ttinclude文件模板
注意: 文件可以上github.com 托管上面获取( https://github.com/damieng/DamienGKit/tree/master/T4/MultipleOutputHelper)
在T4模板中使用include指令导入MultipleOutputHelper.ttinclude文件或者将MultipleOutputHelper.ttinclude的代码复制在T4模板内。
然后初始化Manager对象,代码如下:
注意: 这里的Manager.ttinclude 就是MultipleOutputHelper.ttinclude文件模板
2. 文件块
使用代码标识区分生成的代码块的范围
该代码声明了一个Employee.generated.cs文件,文件代码内容为:
3. 页眉和页脚
很多模板需要共享一个共同的页眉和页脚时,可以使用import语句进行打开和关闭。简单的使用StartHeader和StartFooter的代码方法进行分割。
4. 编译执行
使用Process方法,进行文件分割。
1. 自定义T4模板,文件名为“EntityRepositoryTemplate.tt”,代码如下:
输出文件效果:
联想:基于这个代码实例,可以做一个基于T4模板来批量输出代码的小工具,待续.....
Damien Guard (Github)( https://github.com/damieng )
创建自定义文本模板宿主( MSDN) ( http://msdn.microsoft.com/zh-cn/library/vstudio/bb126579.aspx )
使用T4模板生成代码 - 初探 ( http://www.cotide.com/xcli/Blog/Article/44 )
前言
之前在 “使用T4模板生成代码 - 初探” 文章简单的使用了T4模板的生成功能,但对于一个模板生成多个实例文件,如何实现这个方式呢?无意发现一个解决方案 “MultipleOutputHelper.ttinclude” ,它让基于T4模板批量生成文件实例变得简单起来了。什么是MultipleOutputHelper.ttinclude
Damien Guard是一个在加利福尼亚州圣何塞的开发人员,他构建出处理使用T4模板输出多文件的解决方案“MultipleOutputHelper.ttinclude”使用
1. 初始化获取MultipleOutputHelper.ttinclude文件模板
注意: 文件可以上github.com 托管上面获取( https://github.com/damieng/DamienGKit/tree/master/T4/MultipleOutputHelper)
在T4模板中使用include指令导入MultipleOutputHelper.ttinclude文件或者将MultipleOutputHelper.ttinclude的代码复制在T4模板内。
然后初始化Manager对象,代码如下:
注意: 这里的Manager.ttinclude 就是MultipleOutputHelper.ttinclude文件模板
2. 文件块
使用代码标识区分生成的代码块的范围
该代码声明了一个Employee.generated.cs文件,文件代码内容为:
很多模板需要共享一个共同的页眉和页脚时,可以使用import语句进行打开和关闭。简单的使用StartHeader和StartFooter的代码方法进行分割。
4. 编译执行
使用Process方法,进行文件分割。
场景应用
基于之前的“使用T4模板生成代码 - 初探” 文章的场景,进行基于NHibernate Mapper 来获取Domain对象,然后进行批量生成多个代码文件。1. 自定义T4模板,文件名为“EntityRepositoryTemplate.tt”,代码如下:
让程序自动执行基于T4文件的编译工作
在MSDN-”演练:创建自定义文本模板宿主“ 文章里面看到一段代码,进行了T4文件的编译工作,代码如下:参考资料
MultipleOutputHelper.ttinclude 文件作者(Damien Guard)- 博客( http://damieng.com )Damien Guard (Github)( https://github.com/damieng )
创建自定义文本模板宿主( MSDN) ( http://msdn.microsoft.com/zh-cn/library/vstudio/bb126579.aspx )
使用T4模板生成代码 - 初探 ( http://www.cotide.com/xcli/Blog/Article/44 )
相关文章推荐
- 黄聪:C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(转载)
- [转]使用T4模板批量生成代码
- 【转】- 使用T4模板批量生成代码
- 使用T4模板批量生成代码
- 黄聪:C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(Entity Framework)的类名
- MVC实用架构设计(三)——EF-Code First(3):使用T4模板生成相似代码
- T4模板批量生成代码
- 使用T4模板生成代码的学习
- 在运行程序时报错:"如果在 Code First 模式下使用,则使用 T4 模板为 Database First 和 Model First 开发生成的代码可能无法 正常运行。若要继续使用 Database First 或 Model First,请确保在执行应用程序的 config 文件中指 定 Entity Framework 连接字符串。若要将这些从 Database First 或 Mod
- FluentData-新型轻量级ORM 利用T4模板 批量生成多文件 实体和业务逻辑 代码
- T4模板批量生成代码文件
- MVC实用架构设计(三)——EF-Code First(3):使用T4模板生成相似代码
- 使用T4模板生成代码的学习
- 使用T4 模板来自动生成WCF 代理类 代码
- ASP T4模板批量生成代码
- EF Code First:使用T4模板生成相似代码
- 使用 T4 文本模板生成设计时代码
- C#分析数据库结构,使用XSL模板自动生成代码
- 【T4实践(一)】模板生成代码入门