ASP.NET <%= %>与<%: %>的区别

17
<%: %> 是 ASP.NET 4.0 引入的新语法,类似于 <%= %>,但它会进行 HTML 编码。这可以帮助防止跨站脚本攻击(XSS)。

1
它会自动进行HTML编码输出。这是4中的新功能。不过我相信你可以从其他人的回答中获得更多信息。 - jjnguy
2个回答

22

这是正确的,<%: %> 与 <%= Html.Encode(...) %> 几乎是等价的。 - ridecar2
还有 <%#: ? - Furkan Gözükara

4

: 进行HTML编码。

Scott Guthrie在一篇不错的文章中详细介绍了它。

如果已经进行了编码,请勿再次使用此功能,否则会导致双重编码。但是,如果您想输出HTML等内容,则此功能非常有用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接