前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NVelocity标签使用详解

NVelocity标签使用详解

作者头像
磊哥
发布2018-05-08 16:23:39
1K0
发布2018-05-08 16:23:39
举报
文章被收录于专栏:王磊的博客王磊的博客

本文使用的NVelocity版本为1.1.1,应该是目前为止最新的版本吧,前几天在google上找了一个自称是NVelocity 1.6.1 bate2的dll,下载下来一看更新时间是2009年的,还没版本NVelocity 1.1.1(2010年出的) 新呢!

代码语言:javascript
复制
本文目录:

一、资源、文档下载:

官方下载地址与参考文档

其他下载地址(版本比较低不建议下载)

本文NVelocity 1.1.1 dll与示例下载

NVelocity 使用文档下载

二、使用步骤。

  a) 创建Velocity 引擎(VelocityEngine)并设置属性.

  b) VelocityContext 上下文对象创建于设置.

  c) 使用VelocityEngine(Velocity 引擎)创建模板(Template).

  d) 合并模板和上下文对象、输出.

三、代码演示。

  先引入NVelocity.dll,然后添加代码。

1.一般处理类ShowHTML.ashx代码如下:

代码语言:javascript
复制
<%@ WebHandler Language="C#" Class="ShowHTML" %>

using System;
using System.Web;

// NVelocity 引用
using NVelocity;
using NVelocity.App;
using NVelocity.Runtime;

public class ShowHTML : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        // 1.创建Velocity 引擎(VelocityEngine)并设置属性
        VelocityEngine velocityEngine = new VelocityEngine();
        velocityEngine.AddProperty(RuntimeConstants.RESOURCE_LOADER, "file");           // Velocity加载类型
        velocityEngine.AddProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH,          // Velocity加载文件路径
            context.Server.MapPath("~/Template/"));
        velocityEngine.AddProperty(RuntimeConstants.INPUT_ENCODING, "gb2312");          // 输入编码格式设置
        velocityEngine.AddProperty(RuntimeConstants.OUTPUT_ENCODING, "gb2312");         // 输出编码格式设置
        velocityEngine.Init();

        // 2.Velocity 上下文对象设置
        VelocityContext vc = new VelocityContext();
        // 页面参数设值
        vc.Put("Name", "MT!");
        System.Collections.Generic.List<String> list = new System.Collections.Generic.List<string>();
        for (int i = 1; i < 11; i++)
        {
            list.Add("My Name Is :" + i);
        }
        vc.Put("list", list);

        // 3.创建模板(Template)
        Template template = velocityEngine.GetTemplate("default.html");

        // 4.合并模板和上下文对象、输出
        template.Merge(vc, HttpContext.Current.Response.Output);
        HttpContext.Current.Response.End();
    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }
}

2.default.html模板代码如下:

代码语言:javascript
复制
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>NVelocity 使用测试模板</title>
</head>
<body>
    俺叫$Name
    <br />
    #foreach($item in $list)
        $item<br />
    #end
</body>
</html>

3.效果如下:

本文NVelocity 1.1.1 dll与示例下载

【Stone 制作整理,引用请写明出处谢谢合作,联系QQ:1370569】

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011-09-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档