StringTemplate以renderer调用的格式使用object属性

时间:2016-03-14 18:38:25

标签: c# stringtemplate stringtemplate-4

我从我的模板引用c#资源字符串(使用$作为分隔符)。我这样做是通过将一个参数传递给模板的对象" strings",这是一个c#ResourceManager。 formatString应该是所需资源的名称。这允许我输入我的模板,例如:

<Name>$strings;format="ItemName"$</Name>

此解决方案的唯一问题是,有时我需要从对象树中获取某些内容来帮助构建要查找的资源字符串的名称。例如,枚举的本地化值的通用查找可以提供:

<Type>$strings;format="ItemType$myItem.Type$"$</Type>

然而 - 当我尝试以这种方式调用渲染器时,如果我使用上面的语法,myItem.Type不会被解析为其值,而是直接作为字符串的一部分传递,所以我得到值&# 34;的ItemType $ $ myItem.Type&#34;而不是说,&#34; ItemTypeBicycle&#34;。

但是,如果我不在其周围加上引号,例如:

<Type>$strings;format=ItemType$myItem.Type$$</Type>

我收到一个编译时错误,这个&#34;看起来不像一个表达&#34;

我是否缺少另一种语法,或者您是否无法解析之后作为字符串传递的内容?

0 个答案:

没有答案