0
读
string template = "group simple; apply(it) ::= << $it:bold():italics()$ >> ";
StringTemplateGroup stg = new StringTemplateGroup(new StringReader(template));
stg.DefineTemplate("bold", "<b>$it$</b>");
stg.DefineTemplate("italics", "<i>$it$</i>");
StringTemplate st = stg.GetInstanceOf("apply");
st.SetAttribute("it", "name");
Console.WriteLine(st.ToString());
的上述结果是$它:黑体():斜体()$我期待<i><b>name</b></i>
字符串模板 - 结果从文件读取时不同/从字符串
但是当模板从文件读取,它按预期工作。
StringTemplateGroup stg = new StringTemplateGroup("page", "../../Templates");
stg.DefineTemplate("bold", "<b>$it$</b>");
stg.DefineTemplate("italics", "<i>$it$</i>");
StringTemplate st = stg.GetInstanceOf("apply"); //apply.st => $it:bold():italics()$
st.SetAttribute("it", "name");
Console.WriteLine(st.ToString());
输出为预期<i><b>name</b></i>
为什么不是在第一种情况下工作?我错过了什么吗?
我曾尝试使用<...>,结果是名称:bold():italics()。 – Vijay 2011-03-23 04:53:06
哦。这是C#版本;应该工作一样,但是......显然不是! – 2011-03-25 01:00:39