我需要在资源文件中添加$"test message {variable1} and {variable2}"
种字符串
之前可以使用下面的字符串构建器格式
test message {0} and {1}
让我知道有没有替代方法为$ string格式
执行此操作答案 0 :(得分:4)
$"test message {variable1} and {variable2}"
是string.Format("test message {0} and {1}", variable1, variable2)
的语法糖。
您只能在资源中放置静态值。您无法将动态值作为动态值的格式化字符串。
如果您真的想要使用字符串插值,则需要使用格式键入资源并执行以下操作:
string R(FormattableString fs)
{
return string.Format(Resources.GetString(fs.Format), fs.GetArguments());
}
// uses "test message {0} and {1}" as resource key
R($"test message {variable1} and {variable2}");