可以将字符串的模板存储在变量中并使用插值吗?
var name = "Joe"; var template = "Hi {name}";
然后我想做一些事情:
var result = $template;
原因是我的模板将来自数据库.
解决方法
这可以使用动态编译按要求完成,例如通过
Microsoft.CodeAnalysis.CSharp.Scripting
包.例如:
var name = "Joe"; var template = "Hi {name}"; var result = await CSharpScript.EvaluateAsync<string>( "var name = \"" + name + "\"; " + "return $\"" + template + "\";");