2009-06-02 2 views
4

У меня есть следующий код:Как заставить StringTemplate оценивать атрибут внутри атрибута?

StringTemplate st = new StringTemplate("$msg$"); 
st.SetAttribute("msg", "Hello $usr$"); 
st.SetAttribute("usr", "Jakub"); 
Console.WriteLine(st); 
// current output: "Hello $usr$" 
// expected output: "Hello Jakub" 

ли кто-нибудь знает, как заставить StringTemplate оценить $usr$ атрибут?

ответ

5

Правильное решение должно выглядеть следующим образом.

StringTemplate st = new StringTemplate("$msg$"); 
st.SetAttribute("msg", new StringTemplate("Hello $usr$")); 
st.SetAttribute("usr", "Jakub"); 
Console.WriteLine(st); 
// current output: "Hello Jakub" 
// expected output: "Hello Jakub" 

В следующий раз я буду rtm дважды, прежде чем спрашивать. Обещаю :-)

Смежные вопросы