CodeSmith将模板文件批量生成文件的方法
以前写codeSmith模板的时候,如果直接像asp一样混排编写的话,代码输出来codeSmith中,不知道怎么保存到文件,后来把所有要输出的模板文字都用stringBuiler串接起来然后IO到文件中,但是这样codesmith写起来太麻烦,界面高亮以及智能提示都不理想,所以非常的乱,而且没法一下子把所有的类的模板一次性生成(全写在一个里面太乱,不便管理,以及以后只需生成一部分时也没法单独生成),但看codeSimth里面的例子之后,发现别人的模板都是一个一个独立开的,通过一个主模板生成方案,要单个生成就用单个模板去生成好了,于是花了点时间看了下NetTiers的生成方法,终于找到了眉目,在这里发出来给还没有解决这个问题的朋友一个参考!
第一步:接下来把你要用来生成的子模板注册到主模板中去,代码很简单,如下:
<script language="JavaScript" src="http://book.book560.com/ads/ads728x15.js" type="text/javascript"></script>
<%@ Register Name="MyEntityClass" Template="C:\MyEntityClass.cst" MergeProperties="False" ExcludeProperties="" %>
Name="MyEntityClass" 模板好像会被注册成一个CodeTemplate的派生类,MyEntityClass会是这个类的名字;
C:\MyEntityClass.cst为你模板的位置,相对位置也可以;
第二步:为模板添加属性
当然,我们独立的子模板出会有属性需要设置,这个地方可以利用反射来赋值,代码如下:
CodeTemplate codeTemplate=new MyEntityClassKey();
codeTemplate.SetProperty("IncludeGet", IncludeGet);
codeTemplate.SetProperty("IncludeFind", IncludeFind);
codeTemplate.SetProperty("IncludeSave", IncludeSave);
上面的IncludeGet,IncludeFind就是模板C:\MyEntityClass.cst的一些属性了!后面就是为其设置的值了!
第三步:输出文件
codeTemplate.RenderToFile("c:/3.txt", true);
搞定!后面参数,第一个是输出的地址,第二个是是否覆盖!
还有好多的重载,我就不提了!自己可以慢慢看!
这个功能有什么用呢?当然有用啦,我们写好一系列的模板之后,一个一个去生成那不太累了,而且参数设置来设置去,都差不多,有了这个功能
我可以将它们一次生成出来,简单省事!
好的,到这一步为止,就简单的把NetTiers的模板生成给偷过来了!如果对codesmith不太了解的朋友,可以参考园子里其它前辈的相关教程
CodeSmith将模板文件批量生成文件的方法相关推荐
- 如何批量生成文件夹?
如何批量生成文件夹?有同事向我请求帮助,她有几百个名称,现在需要通过这些名称生成对应名称的文件夹,有没有批量处理的方法呢?否则一个一个的创建,需要花费她半天的时间.小编作为一名混迹职场多年的老油条,解 ...
- 如何批量生成文件夹并命名
如何批量生成文件夹并命名?你知道如何一次性生成大量的文件夹吗,并且对生成的文件夹进行重命名,让这些文件夹有不同的名称.关于这个问题搜索引擎里也找不到很好的解决办法,这个问题的关键在于批量生成,并且生成 ...
- 如何通过TXT文件批量生成EAN14条码
EAN14条形码是基于EAN-128码的编码规则,长度是14位,第14位为校验位,由前面13位计算得出.EAN14条形码通常会用来制作集装箱编号条码.批量制作条码时,我们一般会通过导入数据库的方式来实 ...
- windows下批量生成文件夹
在windows环境下如果想要批量生成文件夹: 1.创建一个记事本文件 2.首行大写MD 3.后面加上你想创建的文件夹的名字,每个名字之间有空格 4.退出记事本并保存 5.将记事本文件后缀改为bat文 ...
- 使用Excel文件批量生成Codabar码
Codabar(库德巴码)是由Monarch Marking Systems在1972年研制的条形码.它是在"2 of 5"后早期阶段引入的条形码.广泛用于需要序列号的领域,如血库 ...
- 通过Excel文件批量生成Code 39扩展码
code39码是条形码的一种,编码简单.能够对任意长度的数据进行编码.支持设备广泛,所以code39码是最常用的条形码之一.code39码在条码打印软件中有两种表现类型:标准code39码和支持字符更 ...
- 【办公自动化】批量生成文件夹乱码解决方案
文章目录 前言 一.工具 二.步骤 1.新建excel生成目录名称 2.目录名称存为txt 3.txt文件后缀改为bat 4.生成目录 前言 因项目验收,根据合同要求批量生成验收目录,目录位置D:\a ...
- 通过TXT文件批量生成UPC-A条码
UPC码算是EAN条码的前身,因此两者有着类似的特性及编码方式.UPC码分为标准型UPC-A码及简易型UPC-E码,UPC-A条码左侧6个条码字符均由A子集的条码字符组成,右侧数据符及校验符均由C子集 ...
- Excel与bat批量生成文件夹,修改文件夹名称
用Excel与bat批量生成文件夹,修改文件夹名称 一.批量生成文件夹 excel一列输入文件名序列:另一列用公式生成要写入bat文件的序列,之后复制该列写入.txt文件,保存为.bat文件,双击运行 ...
最新文章
- jsp 出现cannot be resolved to a type问题解决办法
- hashcode的作用_看似简单的hashCode和equals面试题,竟然有这么多坑!
- 青源 Forum | 人工智能的数理基础前沿系列报告 · 第 4 期
- Kotlin functions
- MySQL数据库Raid存储方案
- resultset需要关闭吗_旧电脑福音!关闭Windows这些没用的设置,电脑性能至少提升50%!...
- python二维高斯分布生成_python 多维高斯分布数据生成方式
- Dead Pixel CodeForces - 1315A(思维)
- 笨方法“学习python笔记之函数
- 【Android开发—智能家居系列】(二):用手机对WIFI模块进行配置
- 应用程序已被java 1.6_Apple Java更新1.6.0_51之后,Swing应用程序卡住了
- 更新新网卡驱动,修复win7雷凌网卡Ralink RT3290在电脑睡眠时和启动网卡时出现蓝屏netr28x.sys驱动文件错误...
- 基于Java实现的禁忌搜索算法
- 最大流最小割定理证明
- carry-lookahead adder 超前进位加法器
- 外贸员需要知道的那些事儿
- The eighth day
- Modbus协议介绍与仿真器Modbus Poll、Modbus Slave、Mod_Rssim 使用指南
- 中南大学计算机学院复试2021,中南大学2021年硕士研究生拟录取名单汇总
- Android EGL入门
热门文章
- 信息奥赛一本通(1112:最大值和最小值的差)
- 浮点数向零舍入(信息学奥赛一本通-T1019)
- 2 MM配置-企业结构-定义-定义工厂代码
- 5.1.3 SELECT+INNER JOIN读取数据
- php遍历子分类的函数,emlog程序获取主分类下的所有子分类ID函数
- MATLAB实现BP神经网络预测汽油辛烷值
- MySQL兼容服务器_服务器不支持 MySql 数据库的解决方法
- C/C++:读写文件
- 影响程序性能的几个关键因素
- 对抗机器学习(Adversarial Machine Learning)发展现状