NVelocity模板引擎在项目中的应用

NVelocity是一个基于.NET的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由.NET代码定义的对象。至于其他的一些别的NVelocity的的解释、和一些用法这里就不在提及。

具体的使用方法:

1,定义Velocity辅助类(VelocityHelper.cs)

提供下载  当然,这个辅助类需要添加NVelocity.dll的引用。

2,aspx页面和Template的结构说明

这个其实是需要根据个人喜好来定!为了更好的能看清自己的结构,我是这样来放置的!如图:

      Template放置所有 *.vm模板

其中:Browse文件夹放置前台页面的模板,Manage文件夹放置后台页面模板。需要注意的是这连个文件夹下的Default文件夹只是一个区分前台或者后台模板的一个标识,在调用时来区分。

      Manage文件夹放置管理的*.aspx页面

Manage文件夹下的页面例如LinkTypeEdit.aspx所调用的模板就为Template/Defalut/LinkTypeEdit.vm。名称依次对应,当然,对应不是必须的。

      根目录放置前台*.aspx页面

前台页面调用的模板为Template/Browse/Defalut/下的模板,和管理页面一样也是名称相互对应。

3,调用、赋值方法

在项目中加入VelocityHelper.cs这个辅助类。

我们以Defalut.aspx为例来大概讲解,首先我们先编辑Template/Browse/Defalut/Default.vm,这是我们首页的模板。

可以看到我们在两个地方使用了模板的变量,分别是$PageTitle,$hello。这样们肯定就需要在Default.aspx中利用引擎模板来做为变量赋值、显示模板等操作。

下面就让我们来处理一下Defalut.aspx页面,因为显示完全是使用模板,所以Default.aspx页面时不需要有任何的东西,只留下@ Page 的一行就可以。后台代码在Page_Load事件中,我们就要作出相应的操作了!

protected void Page_Load(object sender, EventArgs e){

//创建辅助类

Luz.Web.Util.VelocityHelper vh = new Luz.Web.Util.VelocityHelper();

//模板位置

string templatePath = "/Template/Browse/Defalut/";

//通过模版位置初始化引擎

vh.Init(templatePath);

//为变量赋值,第一个参数是变量的名称,也就是你在模版也中写的变量的名称,注意没有"$";第二个参数是值,Object类型。

vh.PutSet("PageTitle", "Hi I am Title");

vh.PutSet("hello", "Hello NVoleCity");

//显示模板

vh.Display("Default.vm");

}

 protected void Page_Load(object sender, EventArgs e){
      //创建辅助类
      Luz.Web.Util.VelocityHelper vh = new Luz.Web.Util.VelocityHelper();
      //模板位置
      string templatePath = "/Template/Browse/Defalut/";

      //通过模版位置初始化引擎
      vh.Init(templatePath);

      //为变量赋值,第一个参数是变量的名称,也就是你在模版也中写的变量的名称,注意没有"$";第二个参数是值,Object类型。
      vh.PutSet("PageTitle", "Hi I am Title");
     vh.PutSet("hello", "Hello NVoleCity");

      //显示模板
       vh.Display("Default.vm");
  }

这样,运行一下看看,是不是模板已经显示出来,而且$PageTitle和$hello已经被替换成了我们在Page_Load事件中为它赋的值。当然,赋值的时候你可以是任何类型,包括List泛型(模板中使用#foreach遍历)等。

时间: 2024-10-10 13:22:41

NVelocity模板引擎在项目中的应用的相关文章

WebPart中使用Nvelocity模板引擎来进行呈现

WebPart中使用Nvelocity模板引擎来进行呈现 分类: SharePoint2011-06-15 08:29 1479人阅读 评论(1) 收藏 举报 模板引擎encodingsharepointxml测试css NVelocity是一套强大的模板引擎,在我之前的随笔中,有过使用它来呈现页面及生成静态页的例子.通过使用它,我们可以达到界面与数据的完成分离(当然需要一些设计手段来支持).我在公司里的工作主要就是在office sharepoint2007的基础上进行一些类型信息系统的门户站

只需一句话就能搞定NVelocity模板引擎,源码+解析+文档+资料+注释

好长时间不发技术方面的动态了,今天无聊就发篇关于NVelocity的技术文章吧,这门技术来源于java开源项目Velocity,比较好用,其他的我也不过多介绍了,没听过的在文章末尾会有介绍,下面我们就实战吧~ 咱们直接上最简单的方法,一句话搞定: DNTNvelocityHelper.NvelocityTemplate(context.Request.MapPath("~/NVelocity/templates/"), context, "Templater_index.dn

Asp.net动态页面静态化之初始NVelocity模板引擎

Asp.net动态页面静态化之初始NVelocity模板引擎 静态页面是网页的代码都在页面中,不须要运行asp,php,jsp,.net等程序生成client网页代码的网页,静态页面网址中一般不含"?"."="."&"等特殊符号. 静态页面不能自主管理公布更新的页面,假设想更新网页内容,要通过FTP软件把文件DOWN下来用网页制作软件改动(通过fso等技术例外) 常见的静态页面举例:.html扩展名的..htm扩展名的. 注意:静态页面并

Nvelocity模板引擎

A.nVelocity是一个基于.NET的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由.NET代码定义的对象.页面设计人员可以只关注页面的显示效果,而由.NET程序开发人员关注业务逻辑编码. B.模板引擎处理流程:编写模板->处理数据->渲染HTML. C.Nvelocity下载地址:http://www.castleproject.org/download/ D.一个简单的示例: 新建一个Application,

express+模板引擎构建项目时遇到的几个小问题

1.启动项目/调试项目 项目启动用:npm start 由于每次更改路由代码后必须重启服务才可以看效果,所以为了达到热加载的效果我们安装 supervisor:全局安装也可以: npm install supervisor -g 然后启动项目: supervisor bin/www 这里要说一点:因为express从4.x版本以后开始把项目启动搬到了bin/www找下,所以直接运行 supervisor bin/www,而不是node app.js 2.在使用ejs模板引擎时出现的一点纠结 在用

nodejs+express +jade模板引擎 新建项目

先 安装 nodejsiDEAAM 2015/7/16 22:47:25然后安装 npm install expressiDEAAM 2015/7/16 22:47:35然后安装 npm install -g express-generator 然后 express myapp 然后 npm start 使用浏览器访问地址:http://localhost:3000/可以看到:ExpressWelcome to Express

C#模板引擎NVelocity实战项目演练

一.背景需求 很多人在做邮件模板.短信模板的时候,都是使用特殊标识的字符串进行占位,然后在后台代码中进行Replace字符串,如果遇到表格形式的内容,则需要在后台进行遍历数据集合,进行字符串的拼接,继而Replace模板中的占位符 !今天给大家分享一个WinForm方面的模板引擎的小技巧和小技能吧,本次课程阿笨给大家分享关于WinForm开发中如何通过模板引擎NVelocity根据动态数据生成漂亮的订单详细查看页面? 1.1.本次分享课程包含知识点如下: 1).WinForm中WebBrowse

aspx NVelocity 模板使用

1.新建webform项目 2.引用NVelocity.dll 3.添加UserInfo.aspx,并删除其中的代码,只留第一句话 4.添加实体类 public class UserInfoEntity { public int UserId { get; set; } public string UserName { get; set; } } 5.在UserInfo.aspx.cs的load中写 using System; using System.Collections.Generic;

转 如何使用velocity模板引擎开发网站

基于 Java 的网站开发,很多人都采用 JSP 作为前端网页制作的技术,尤其在是国内.这种技术通常有一些问题,我试想一下我们是怎样开发网站的,通常有几种方法: 1:功能确定后,由美工设计网页的UI(界面)部分,然后由程序员在其上加入代码显示逻辑(比如循环,判断显示数据结果).也就是通常的 jsp 页面制作,当然这部分可以由美工完成模板,然后由 jsp 工程师再继续以它为原型创建相应的 jsp 页面. 2:功能确定后,由美工设计网页的UI(界面)部分,然后由网页制作人员在其上加入代码显示逻辑(比