Использование сущностей HTML в ресурсах .Net - PullRequest
0 голосов
/ 31 октября 2018

Есть ли способ предотвратить экранирование .Net / Razor сущностей HTML в ресурсах .Net? У нас есть веб-приложение, которое должно быть доступно на нескольких языках. Это создает проблему, заключающуюся в том, что тексты занимают различное количество места в зависимости от того, на каком языке они находятся. Например, когда элемент TH содержит «Ссылку на отгрузку» на английском языке, браузер разбивает его на две строки, что нормально. На датском языке это говорит "Forsendelsesreference", который не раскололся. Мы хотим исправить это, вставив мягкую дефисную сущность HTML. Тем не менее, когда мы делаем это, он экранируется, и на странице отображается «Forsendelses & shy; reference». Мы можем увидеть два способа избежать этого. Один из них - обернуть содержимое каждого ярлыка и элемента TH в @ Html.Raw. Другой - идентифицировать те метки и заголовки, которые используют ресурс с мягким дефисом, и обернуть содержимое в @ Html.Raw. Ни один не очень привлекателен. Есть ли способ просто отключить экранирование текста от ресурсов вообще? Допустимо отключить экранирование всего текста, полученного из @ class.property, поскольку мы используем его только для ресурсов. Все, что от пользователя мы получаем от модели или от Ajax.

1 Ответ

0 голосов
/ 31 октября 2018

Как предложено Сами Кухмоненом выше, вы можете использовать настоящие мягкие дефисы вместо сущностей HTML.

Вы можете просто использовать мягкие дефисы Unicode. Однако эти символы невидимы, что затрудняет чтение файла ресурсов. Вы также можете использовать числовые символьные объекты XML в файле ресурсов, например: Forsendelsesreference

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...