Кодирование текста и атрибутов
При выводе любого текста на страницу, либо в качестве значений атрибутов тегов необходимо обеспечить соответствие этого текста HTML-формату, заменив HTML-символы на их коды, чтобы браузер не интерпретировал выводимый текст как инструкции разметки страницы.
Кодирование текстов, полученных из неблагонадежных источников (добавленных пользователями, полученных от удаленных веб-служб и т. п.), необходимо для обеспечения безопасности пользователя, работающего со страницей, на которую выводятся эти тексты.
Для кодирования предназначены два вспомогательных метода — Html.AttributeEncode() и Html.Encode().
Пример использования Html.AttributeEncode():
<div someattr="<%= Html.AttributeEncode("<b>Teкст</b>")"></div>
Результирующая разметка:
<div someattr="<b>Teкст</b>"></div>
Пример использования Html.Encode():
<div><%= Html.Encode("<b>Текст</b>")</div>
Результирующая разметка:
<div><b>TeKCT</b>"</div>
Примечание
Важно отметить, что методы Html.AttributeEncode() и Html.Encode() не заменяют символ апострофа (') на соответствующий HTML-код, поскольку не рекомендуется использовать апострофы для атрибутов тегов на HTML-страницах, хотя это и допустимо с точки зрения HTML-стандарта.
**********************************
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОК