将可执行的Blazor代码嵌入到JSON输入字符串中



我有以下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>

但这显然不那么灵活。

相关内容

  • 没有找到相关文章

最新更新