NVelocity 模板引擎笔记

来源:互联网 发布:网络客服名称 编辑:程序博客网 时间:2024/04/29 11:02
模板引擎加载代码
VelocityEngine vltEngine = new VelocityEngine();                vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "file");                vltEngine.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, System.Web.Hosting.HostingEnvironment.MapPath("~/temple"));//模板文件所在的文件夹                vltEngine.Init();                VelocityContext vltContext = new VelocityContext();                vltContext.Put("username", "");//设置参数,在模板中可以通过$data来引用                vltContext.Put("password", "");                vltContext.Put("msg","");      vltContext.Put("minxin",  person );                Template vltTemplate = vltEngine.GetTemplate("login.html");                System.IO.StringWriter vltWriter = new System.IO.StringWriter();                vltTemplate.Merge(vltContext, vltWriter);                string html = vltWriter.GetStringBuilder().ToString();



在HTML 中用$来标记变量。 就可以在ashx当中 来替换代码
<form action="login2.ashx" method="get" >        <input type="text" name ="username" value="$username" />        <input type="password" name="password" value="$password" />        <input type="submit" value="提交" />        <p>$msg</p>        <p>我的老爹 $p.Father.Name</p>    </form>



1、 可以传一个类。 在HTML当中 可以用  .  符号把传过去的字段 给 索引出来
条件循环语法 

   #if($age >10)            大于10            #else            小于等于10            #end#foreach ()#end 



循环嵌套代码
      
 <ul>           #foreach($item in $minxin)                #if($item.Age >15)                <li style="color: red">$item.Name的年龄是 $item.Age</li>                 #else                <li style="color: green">$item.Name 的年龄是 $item.Age</li>                 #end           #end       </ul>


通过  #include ("head.html")  可以包含另外的 文件, 相当于把代码复制到现在的 文件代码当中

#parse() 的上面的代码差不多, 但是只是简单把内容包含进来,但是不会解析, 
0 0
原创粉丝点击