NVelocity引擎輸出HTML流***(通常處理程序中)
VelocityEngine vltEngine = new VelocityEngine();
vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "file");
vltEngine.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, System.Web.Hosting.HostingEnvironment.MapPath("~/templates"));//模板文件所在的文件夾
vltEngine.Init();
VelocityContext vltContext = new VelocityContext();
vltContext.Put("ps", dic);//設置參數,在模板中能夠經過$data來引用
vltContext.Put("arry",arr);
vltContext.Put("personarry",person);
Template vltTemplate = vltEngine.GetTemplate("test3.htm");
System.IO.StringWriter vltWriter = new System.IO.StringWriter();
vltTemplate.Merge(vltContext, vltWriter);html
string html = vltWriter.GetStringBuilder().ToString();
context.Response.Write(html)數組
NVelocity引擎中的一些使用方法:ui
以$P爲對象屬性有Name,屬性寫法是$P.Name
若調用NVelocity中的方法,寫法爲#XXXX
**************************
1:在該引擎中的遍歷:遍歷的對象能夠是數組、List、Dictionary
這裏用<ul></ul>:
<ul>
#foreach($a in $arry)
<li>$a</li>
#end
</ul>
**************************
2:條件判斷:
<p>
#if($age>10)
年齡大於10;
#else
年齡小於10;
#end
</p>
**************************
3:#include("xxx.htm")與#parse("xxx.htm")的區別
#include("xxx.htm")不會解析NVelocity中的元素
#parse("xxx.htm")會解析NVelocity中的元素htm