Почему IViewLocalizer не работает с ключевым словом {0}?
У меня есть проект asp.net core 5 с
IViewLocalizer
для локализатора.
Строка в Localizer имеет ключевое слово dynamic, оно используется для просмотра компонентов.
Я собираюсь использовать
String.Format
чтобы решить эту проблему.
Поэтому мне нужно добавить переменную строку в локализатор, например:
Welcome to {0}
Когда я использую приведенный ниже код для отображения его в представлении:
@string.Format(Localizer["Welcome"].Value, ShopName)
Эта строка ничего не отображает и блокирует весь следующий за ней код.
Странно, что Visual Studio 16.8.2 не сообщает об ошибках.
Вскоре я нашел решение с этим:
@Html.Raw(string.Format(Localizer["Welcome"].Value, ShopName))
Однако я не знаю, что вызывает эту проблему и почему
Html.Raw
решает это.
Не могли бы вы рассказать мне об этом поподробнее? Спасибо.
1 ответ
Можете ли вы попробовать это, когда получаете данные от локализатора;
@Localizer.GetString("Welcome",new string[]{"Shop Name"});