.Net使用NVelocity模板
1、NVelocity是什么?
专注于为中小企业提供成都网站建设、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业新林免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
答:NVelocity是一个基于.NET的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由.NET代码定义的对象。
2、NVelocity有什么作用(有什么裨益)?
答:当NVelocity 应用于Web开发时,界面设计人员和.NET程序开发人员同步开发一个遵守MVC架构的Web站点,也就是说页面设计人员可以只关注页面的显示效果,而 由.NET 开发人员关注业务逻辑编码。NVelocity将.NET 代码从Web界面中分离出来,这样为Web站点的长期维护提供了方便,同时也为我们在aspx之外又提供了一种可选方案。
NVelocity的能力远不止Web站点开发这个领域,例如:它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立的工具来产生源代码和报告,或者作为其他系统的集成组件使用。
nVelocity也可以为很多web开发架构提供模板服务(template service)。我们的系统就提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。
3、我们如何使用NVelocity?
.Net之NVelocity的三种用法 【转】
using NVelocity;
using NVelocity.App;
using NVelocity.Runtime;
VelocityEngine vltEngine = new VelocityEngine();
vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "file");
vltEngine.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, Server.MapPath("~/Template/"));
vltEngine.Init();
VelocityContext vltContext = new VelocityContext();
vltContext.Put("PageTitle", "文件模板例子");
vltContext.Put("ListUsers", listUsers);
Template vltTemplate = vltEngine.GetTemplate("Default.htm");
System.IO.StringWriter vltWriter = new System.IO.StringWriter();
vltTemplate.Merge(vltContext, vltWriter);
Response.Write(vltWriter.GetStringBuilder().ToString());
NVelocity使用资源文件模板例子
例子下载
using NVelocity;
using NVelocity.App;
using NVelocity.Runtime;
IList
// 添加程序集名称
listAssembly.Add("LibTest");
VelocityEngine vltEngine = new VelocityEngine();
vltEngine.SetProperty(RuntimeConstants.RESOURCE_LOADER, "assembly");
vltEngine.SetProperty("assembly.resource.loader.class", "NVelocity.Runtime.Resource.Loader.AssemblyResourceLoader; NVelocity"); // 固定写法- -!
vltEngine.SetProperty("assembly.resource.loader.assembly", listAssembly);
vltEngine.Init();
VelocityContext vltContext = new VelocityContext();
vltContext.Put("PageTitle", "资源模板例子");
vltContext.Put("ListUsers", listUsers);
Template vltTemplate = vltEngine.GetTemplate("LibTest.Resources.Default.htm");
System.IO.StringWriter vltWriter = new System.IO.StringWriter();
vltTemplate.Merge(vltContext, vltWriter);
Response.Write(vltWriter.GetStringBuilder().ToString());
NVelocity使用字符串模板例子
例子下载
using NVelocity;
using NVelocity.App;
using NVelocity.Runtime;
System.Text.StringBuilder builder = new System.Text.StringBuilder();
builder.Append("#foreach(uinListUsers)"r"n" +
"#beforeall"r"n" +
"
Name | Sex | City |
$u.Name | " +$u.Sex | " +$u.City | " +
"#nodata"r"n" +
"暂无用户资料"r"n" +
"#end");
VelocityEngine vltEngine = new VelocityEngine();
vltEngine.Init();
VelocityContext vltContext = new VelocityContext();
vltContext.Put("PageTitle", "字符串模板例子");
vltContext.Put("ListUsers", listUsers);
System.IO.StringWriter vltWriter = new System.IO.StringWriter();
vltEngine.Evaluate(vltContext, vltWriter, null, builder.ToString());
Response.Write(vltWriter.GetStringBuilder().ToString());
分享文章:.Net使用NVelocity模板
浏览路径:http://pwwzsj.com/article/geipgo.html