• NVelocity中调用方法 一定要通过 类.方法


    protected void Page_Load(object sender, EventArgs e)
        {
            IList
    <UserInfo> listUsers = new List<UserInfo>();

            UserInfo objUser 
    = new UserInfo();
            objUser.Name 
    = "TestUser1";
            objUser.Sex 
    = "M";
            objUser.City 
    = "ShenZhen";
            listUsers.Add(objUser);

            objUser 
    = new UserInfo();
            objUser.Name 
    = "TestUser2";
            objUser.Sex 
    = "F";
            objUser.City 
    = "BeiJing";
            listUsers.Add(objUser);

            objUser 
    = new UserInfo();
            objUser.Name 
    = "TestUser3";
            objUser.Sex 
    = "M";
            objUser.City 
    = "USA";
            listUsers.Add(objUser);


            VelocityEngine engine 
    = new VelocityEngine();
            ExtendedProperties props 
    = new ExtendedProperties();
            props.AddProperty(
    "file.resource.loader.path", Server.MapPath("."));
            engine.Init(props);
            Template template 
    = engine.GetTemplate("HTMLPage2.htm");


            VelocityContext context 
    = new VelocityContext();
            context.Put(
    "name""VelocityEngine测试</br>");//修改模版页中的
            context.Put("listUsers", listUsers);

            tool tool 
    = new tool();//新类
            context.Put("nono", tool);
           
            System.Text.StringBuilder builder 
    = new System.Text.StringBuilder();
            builder.Append(
    "#foreach($u in $listUsers)\r\n" +
                
    "#beforeall\r\n" +
                
    "<table border=\"0\" cellpadding=\"10\" cellspacing=\"10\">" +
                
    "<tr><td>Name</td><td>Sex</td><td>City</td></tr>" +
                
    "#each\r\n" +
                
    "<tr>" +
                
    "<td>$nono.method($u.Name)</td>" +
                
    "<td>$u.Sex</td>" +
                
    "<td>$u.City</td>" +
                
    "</tr>" +
                
    "#afterall\r\n" +
                
    "</table>" +
                
    "#nodata\r\n" +
                
    "暂无用户资料\r\n" +
                
    "#end");


            System.IO.StringWriter vltWriter 
    = new System.IO.StringWriter();
            template.Merge(context, vltWriter);
            engine.Evaluate(context, vltWriter, 
    null, builder.ToString());


           
    // System.IO.StringWriter vltWriter = new System.IO.StringWriter();


            Response.Write(vltWriter.GetStringBuilder().ToString());

        }
  • 相关阅读:
    遍历mac系统访达文件时候要注意了
    python r+ 是追加写
    Linux如何给一个python被挂起进程传递命令?
    nohup后台挂起
    树莓派建站全过程
    wechat robot
    廖雪峰笔记(转网络专题)
    【转】 前端笔记之JavaScript(十一)event&amp;BOM&amp;鼠标/盒子位置&amp;拖拽/滚轮
    【转】 前端笔记之JavaScript(十)深入JavaScript节点&amp;DOM&amp;事件
    【转】 前端笔记之JavaScript(九)定时器&amp;JSON&amp;同步异步/回调函数&amp;函数节流&amp;call/apply
  • 原文地址:https://www.cnblogs.com/yasin/p/1703221.html
Copyright © 2020-2023  润新知