TerryLee's Tech Space
搬家到了新博客,请大家移步至:
http://terrylee.me/blog
访问,谢谢!
博客园
首页
博问
闪存
新随笔
联系
订阅
管理
随笔- 491 文章- 3 评论- 16104
CodeSmith实用技巧(九):重载Render方法来控制输出
在
CodeSmith
中,
CodeTemplate.Render
方法是在模版执行完成进行模版输出时执行,你可以通过重载
CodeTemplate.Render
方法来修改
CodeSmith
输出时的事件处理。例如:你可以修改模版输出时的方式来代替现在默认的方式,下面这段代码展示了在保持
CodeSmith
默认的窗口显示的同时,把结果输出到两个不同的文件。
1
<%
@ CodeTemplate Language
=
"
C#
"
TargetLanguage
=
"
Text
"
Description
=
"
AddTextWriter Demonstration.
"
%>
2
<%
@ Import Namespace
=
"
System.IO
"
%>
3
This template demonstrates
using
the AddTextWriter method
4
to output the template results to multiple locations concurrently.
5
<
script runat
=
"
template
"
>
6
public
override
void
Render(TextWriter writer)
7
{
8
StreamWriter fileWriter1
=
new
StreamWriter(
@"
C:\test1.txt
"
,
true
);
9
this
.Response.AddTextWriter(fileWriter1);
10
11
StreamWriter fileWriter2
=
new
StreamWriter(
@"
C:\test2.txt
"
,
true
);
12
this
.Response.AddTextWriter(fileWriter2);
13
14
base
.Render(writer);
15
16
fileWriter1.Close();
17
fileWriter2.Close();
18
}
19
</
script
>
注意不能忘了
base.Render(writer);
这句话,否则你将不能获得默认的输出。当重载
CodeTemplate.Render
方法时,你也可
以访问
TextWriter
,也就是说你也可以直接添加其它的附属信息到模版输出的内容中。
作者:
TerryLee
出处:
http://terrylee.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
绿色通道:
好文要顶
关注我
收藏该文
与我联系
posted @ 2005-12-28 08:46
TerryLee
阅读(3009)
评论(2)
编辑
收藏
发表评论
1726108
回复
引用
查看
#1楼
2009-10-14 19:18
to be or not
怎么用这个方法 举个例子 谢谢!
回复
引用
查看
#2楼
2009-12-16 21:26
BenBoy
这个方法很好用。但是,有没有办法吧结果的前半部分输出到文档1,后半部分输出到文档2呢。而不是吧结果全部相同的输出到文档1、文档2.我想把我的结果分成2部分,分别保存在2个文档中。不知道有没办法实现,能实现的话就省掉了新建文档,复制、粘贴,我要多次生成结果,这也是个很大的工作量啊。请指教。
注册用户登录后才能发表评论,请
登录
或
注册
,
返回博客园首页
。
首页
博问
闪存
新闻
园子
招聘
知识库
最新IT新闻
:
·
Chrome将给老机带来更快的3D绘图性能
·
在线支付创业公司Stripe获红杉资本等1800万美元的投资,公司估值达1亿美元
·
创新工场孵化公司磊友科技今天正式推出首款大型手机HTML5网页游戏《黎明帝国》
·
霍金的伟大与不幸
·
Linux为什么成功?因为它的失败是免费的!
»
更多新闻...
最新知识库文章
:
·
高级编程语言的发展历程
·
如何学习一门新的编程语言?
·
学习不同编程语言的重要性
·
为什么我喜欢富于表达性的编程语言
·
计算机专业的女生为什么要学编程
»
更多知识库文章...
China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
公告
个人简介
网名:TerryLee
本名:李会军
位置:中国 北京
搬家到了新博客,请大家移步至:
http://terrylee.me/blog
,谢谢!
关注我
我的著作
官网:
《Silverlight 2完美征程》
MVP配置
MVP配置
版权声明
本站采用
创作共用
许可 署名,非商业
绿色通道
1.
一步一步学Silverlight 2系列
2.
.NET设计模式系列文章
3.
ASP.NET AJAX入门系列
4.
Castle开发系列文章
5.
Enterprise Library系列
博客园.NET频道
昵称:
TerryLee
园龄:
6年4个月
粉丝:
1174
关注:
33
搜索
随笔分类
[01] .NET大本营(50)
(rss)
[02] 探微知著CLR
(rss)
[03] 银光点亮世界(62)
(rss)
[04] WCF后传(17)
(rss)
[05] 架构与设计(24)
(rss)
[06] LINQ之美(4)
(rss)
[07] AJAX风云(15)
(rss)
[08] Web开发(66)
(rss)
[09] 依赖注入(14)
(rss)
[10] 模式与实践(68)
(rss)
[11] 数据持久(19)
(rss)
[12] 开源世界(35)
(rss)
[13] 代码生成(23)
(rss)
[14] 测试与重构(3)
(rss)
[15] 工作流基础
(rss)
[16] 技术曲苑杂坛(1)
(rss)
[17] 并行编程(1)
(rss)
[18] 动态语言(4)
(rss)
[19] 写作生涯(2)
(rss)
[20] 推荐系列(32)
(rss)
[21] 数据库相关(18)
(rss)
[30] 前沿报道(28)
(rss)
[31] 项目管理(3)
(rss)
[32] 我点我评(2)
(rss)
[33] 我思我考(13)
(rss)
[34] 社区活动(9)
(rss)
[35] 东拉西扯(37)
(rss)
随笔档案
2009年8月 (1)
2009年5月 (1)
2009年4月 (3)
2009年1月 (2)
2008年12月 (4)
2008年11月 (10)
2008年10月 (12)
2008年9月 (3)
2008年8月 (5)
2008年7月 (13)
2008年6月 (10)
2008年3月 (41)
2008年2月 (5)
2008年1月 (13)
2007年12月 (15)
2007年11月 (7)
2007年7月 (3)
2007年4月 (2)
2007年3月 (4)
2007年2月 (2)
2007年1月 (6)
2006年12月 (18)
2006年11月 (32)
2006年10月 (35)
2006年9月 (19)
2006年8月 (16)
2006年7月 (23)
2006年6月 (11)
2006年5月 (13)
2006年4月 (24)
2006年3月 (17)
2006年2月 (13)
2006年1月 (13)
2005年12月 (38)
2005年11月 (20)
2005年10月 (27)
2005年9月 (10)
个人站点
TerryLee @ 51CTO
(rss)
我在51CTO的镜像
TerryLee @ ASP.NET
(rss)
我在ASP.NET网站
TerryLee @ IT168
(rss)
我在IT168的镜像
TerryLee @ 博客堂
(rss)
我在博客堂的一片天地
个人主页
我的好友
Aero
(rss)
anchky
(rss)
Anytao
(rss)
Autumoon
(rss)
DDL
(rss)
Dflying Chen
(rss)
Dudu
(rss)
Fantasy Soft
(rss)
idior
(rss)
JesseQu
(rss)
Jillzhang
(rss)
kid-li
(rss)
luking
(rss)
MichelleHu
(rss)
PrideRock的专栏
(rss)
RogerTong
(rss)
Sunmoonfire
(rss)
Teddy
(rss)
wayfarer
(rss)
阿不
(rss)
博文视点官方博客
(rss)
大人物中的小人物
(rss)
丁学
(rss)
怪怪
(rss)
蜡笔小巢
(rss)
蜡人张
(rss)
老赵
(rss)
李茹
(rss)
卢彦
(rss)
吕震宇
(rss)
罗炳桥
(rss)
难得一蠢
(rss)
鸟食轩
(rss)
努力学习的熊
(rss)
螃蟹
(rss)
水晶心情
(rss)
小寒
(rss)
雁儿飞飞
(rss)
杨正祎
(rss)
源码工作室
(rss)
张大磊
(rss)
张莹
周银辉
(rss)
积分与排名
积分 - 6297470
排名 - 2
阅读排行榜
评论排行榜