Скажем, у меня есть текстовый шаблон с рядом полей, которые необходимо заполнить:
var template = "hello {$name}. you are {$age} years old. you live in {$location}"
и IDictionary <строка, строка>
значений для замены:
key | value
===================
name | spender
age | 38
location| UK
Наивный способ заполнения шаблона может выглядеть примерно так:
var output = template;
foreach(var kvp in templValues)
{
output = output.Replace(string.format("{{${0}}}", kvp.Key), kvp.Value);
}
Однако это кажется ужасно неэффективным. Есть способ лучше?