我有以下Blazor代码,其中数据值是从JSON文件输入的。
<p>@product.Name</p>
<p>@((MarkupString)product.Description)</p>
我想做的是嵌入@product。名称转换为JSON文件中的描述文本,以便将其作为描述的一部分呈现。我正在寻找像这样简单的东西:
"Description": "This a detailed description of the <dummytag>@product.Name</dummytag> product or service".
我尝试过各种组合,但都无法呈现第3代产品。名称有人能告诉我怎么做吗。我知道这会导致糟糕的安全结果。
在Blazor中,必须在部署前编译@product.Name
。因此,将其嵌入数据中是行不通的。
但是,您可以使用旧式字符串格式:
"Description": "This a detailed description of the <dummytag>{0}</dummytag> product or service"
然后
<p>@((MarkupString) string.Format(product.Description, product.Name)</p>
但这显然不那么灵活。