Слепок кода :
является частью веб-компилятора ASP.NET 4.0 и не просто вызывает Html.Encode()
.Он определяет, была ли строка уже закодирована первой (если выражение возвращает IHtmlString
, то, вероятно, она не будет закодирована).
Это означает, что ее можно использовать при вставке фактических данных илипри вставке HTML из какого-либо вспомогательного метода (если вы пишете свои собственные вспомогательные методы, они всегда должны возвращать IHtmlString
с MVC 2).
Что касается того, используете ли вы его всегда или нет, конечно,ты неНо я бы предпочел не думать об этом слишком много и буду счастлив, если узнаю, что я прошел путь к отражению атак XSS без особых усилий;поэтому я почти всегда использую его.
Он также рекомендует вам убедиться, что вы возвращаете MvcHtmlString
из своих вспомогательных методов HTML, а не string
.