模板引擎Nvelocity
模板引擎:为了页面的合成变得更加的方便
Nvelocity
Net
JSP:velocity,freemark
使用步骤:
1.在UI层中引入Nvelocity.dll程序集
匿名类对象 new{属性名=属性值。。。。。}
一般使用推断类型来储存创建的对象var
模板引擎代码:
1 VelocityEngine vltEngine = new VelocityEngine(); 2 vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "file"); 3 vltEngine.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, System.Web.Hosting.HostingEnvironment.MapPath("~/template")); 4 vltEngine.Init(); 5 VelocityContext vltContext = new VelocityContext(); 6 vltContext.Put("errorMsg", ""); 7 Template vltTemplate = vltEngine.GetTemplate("template.html"); 8 System.IO.StringWriter vltWriter = new System.IO.StringWriter(); 9 vltTemplate.Merge(vltContext, vltWriter); 10 string html = vltWriter.GetStringBuilder().ToString(); 11 context.Response.Write(html);
代码示例:
使用步骤
1.在UI层中引入Nvelocity.dll程序集
2.创建一个RenderHTML类
3.创建Render(string fileName,object templateDate)方法,并且复制以上代码到函数中
4.在HTML中设定$data取出数据
5.通过外部调用,返回合成后的HTML
1 public class RenderHTML 2 { 3 public static string Render(string fileName,object templateDate) 4 { 5 VelocityEngine vltEngine = new VelocityEngine(); 6 vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "file"); 7 vltEngine.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, System.Web.Hosting.HostingEnvironment.MapPath("~/template")); 8 vltEngine.Init(); 9 VelocityContext vltContext = new VelocityContext(); 10 vltContext.Put("data", templateDate); 11 Template vltTemplate = vltEngine.GetTemplate(fileName); 12 System.IO.StringWriter vltWriter = new System.IO.StringWriter(); 13 vltTemplate.Merge(vltContext, vltWriter); 14 string html = vltWriter.GetStringBuilder().ToString(); 15 return html; 16 } 17 }
注意:在Nvelocity中循环取List数据
1 #foreach($item in $data) 2 //HTML Code And C# $DATA.Value 3 #end

浙公网安备 33010602011771号