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());
}
{
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());
}