zoukankan      html  css  js  c++  java
  • 模板引擎小例子

    一般处理程序中可以使用模板引擎来实现前端与后端代码的分开维护工作。工具下载地址:http://www.castleproject.org/download/  (NVelocity.dll)引用即可。

           //对象
                Person person = new Person();
                person.Name = "yzk";
                person.Age = 30;
           //list集合
                Dictionary<string, string> dict = new Dictionary<string, string>();
                dict["tom"] = "斯坦福";
                dict["jim"] = "加里敦";
                dict["yzk"] = "哈佛";

             //把类的定义和对象的声明初始化放到一起
            //匿名类
            var news = new { Title = "特大喜讯",Author="杨中科",PostDate="2013-11-08",Msg="今天晚上会公布喜讯细节!" };
            string s = news.PostDate;

                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("p", person);//设置参数,在模板中可以通过$data来引用
           vltContext.Put("p", dict);//设置参数,在模板中可以通过$data来引用 Template vltTemplate = vltEngine.GetTemplate("test.htm"); System.IO.StringWriter vltWriter = new System.IO.StringWriter(); vltTemplate.Merge(vltContext, vltWriter); string html = vltWriter.GetStringBuilder().ToString(); context.Response.Write(html);
    <ul>
        #foreach($p in $persons)
            #if($p.Age>20)
              <li style="color:Red">$p.Name的年龄是$p.Age</li>
            #else
              <li style="color:Green">$p.Name的年龄是$p.Age</li>
            #end
        #end
    </ul>

    在htm中用$p接受后台的数据,前台可以接受字符串$p、对象$p.Name、索引$p.tom等。

  • 相关阅读:
    iot 表索引dump《2》
    heap表和iot表排序规则不同
    Cannot complete the install because one or more required items could not be found.
    iot表输出按主键列排序,heap表不是
    iot 表主键存放所有数据,且按数据插入顺序排序
    iot表和heap表排序规则不同
    org.eclipse.graphiti.ui.editor.DiagramEditorInput.
    Oracle 排序规则
    perl 异步超时 打印错误
    14.6.3 Grouping DML Operations with Transactions 组DML操作
  • 原文地址:https://www.cnblogs.com/len0031/p/4176866.html
Copyright © 2011-2022 走看看