Как вы предотвращаете отправку AntiXssEncoder числовой символьной ссылки "Возврат каретки" "Перевод строки"?

ASP .NET разметить с помощью AntiXssEncoder

<asp:Textbox TextMode="Multiline" runat=server>
First Line
Second Line
</asp:TextBox>

Отображается как:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
 <textarea rows="5" >First Line&#13;&#10;Second Line</textarea> 
</body>
</html>

Это недопустимый HTML5, поскольку ссылка на числовые символы расширена до возврата каретки. Причина написания кода с использованием числовой ссылки на символ, а не фактических символов, заключается в том, что страница написана в ASP .NET, а AntiXss является HttpEncoder по умолчанию на этой странице: http://haacked.com/archive/2010/04/06/using-antixss-as-the-default-encoder-for-asp-net.aspx.

Удаление кодировщика AntiXss решило бы проблему, но есть ли способ сохранить кодировщик AntiXss и предотвратить его отправку числовых ссылок на символы "Возврат каретки" и "Перевод строки"?

1 ответ

Решение

Это не может быть предотвращено в текущей версии проекта (v4.2.1). В проекте codeplex осталась нерешенная проблема.

Проблема: возврат каретки, закодированный в виде числовой ссылки на символ - http://wpl.codeplex.com/workitem/19074

Другие вопросы по тегам