模板引擎加载代码
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当中 可以用 . 符号把传过去的字段 给 索引出来
通过 #include ("head.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>
#parse() 的上面的代码差不多, 但是只是简单把内容包含进来,但是不会解析,