Вставить исполняемый код Blazor во входную строку JSON - PullRequest
0 голосов
/ 11 июля 2020

У меня есть следующий код Blazor, где значения данных вводятся из файла JSON.

<p>@product.Name</p>
<p>@((MarkupString)product.Description)</p>

Я бы хотел вставить @ product.Name в текст описания в JSON файл, чтобы он отображался как часть описания. Я ищу что-то простое вроде этого:

"Description": "This a detailed description of the <dummytag>@product.Name</dummytag> product or service".

Я пробовал различные комбинации, но не смог отобразить gen3Product.Name. Подскажите, пожалуйста, как это сделать. Я знаю, что это может привести к плохим результатам с точки зрения безопасности.

1 Ответ

2 голосов
/ 11 июля 2020

В 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>

, но это очевидно менее гибкий.

...