我们在用于电子邮件的嵌入式资源中拥有一堆 NVelocity 模板。我们希望将这些模板移至数据库,以便用户可以轻松配置它们。
NVelocity(城堡端口)似乎不支持字符串作为模板。有谁知道该怎么做。
需要明确的是,这就是我想要做的(语法可能不准确,我是凭记忆来的)......
string templateString = "Hello $!user";
Template template = new Template(templateString);
string results = template.Merge(....);
这对我有用:
using System.Collections;
using System.IO;
using NUnit.Framework;
using NVelocity;
using NVelocity.App;
[Test]
public void StringParsing()
{
var h = new Hashtable {
{ "foo", "Template" },
{ "bar", "is working" },
{ "foobar", new[] { "1", "2", "3" } } };
Velocity.Init();
var c = new VelocityContext( h );
var s = new StringWriter();
Velocity.Evaluate( c, s, "",
"$foo $bar: #foreach ($i in $foobar)$i#end" );
Assert.AreEqual( "Template is working: 123", s.ToString() );
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)