Лично мне не нравится этот новый синтаксис <%:
. Я скорее использую <%= HttpUtility.HtmlEncode(
, потому что это намного более явно.
Кроме того, он дает ложное чувство безопасности, потому что он выполняет только кодирование HTML. Посмотрите на этот фрагмент, например:
function myJavaScriptFunction()
{
var message = '<%: Person.LastComment %>';
alert(message);
}
Это не сохранение, потому что оно не использует правильную кодировку. Следующее безопасно:
function myJavaScriptFunction()
{
var message = '<%: AntiXss.JavaScriptEncode(Person.LastComment) %>';
alert(message);
}
Гораздо точнее.