在ASP.NET MVC 2中,
谢谢。
<%:
标签被引入来代替Html helpers中的<%=
。但是这意味着什么,与之前的有什么区别?我应该在何时使用<%=
和<%:
?谢谢。
<%:
标签被引入来代替Html helpers中的<%=
。但是这意味着什么,与之前的有什么区别?我应该在何时使用<%=
和<%:
?<%: xyz %>
语法执行的操作与之前版本中的<%= Server.HtmlEncode(xyz) %>
相同。它只是一个快捷方式,因为它经常被使用。IHtmlString
接口来确定是否需要编码。<%:
会自动提供HTML编码,因此您不需要自己编码。在ASP.NET 4中,我们引入了一种新的代码表达式语法(<%: %>
),它像<%= %>
块一样呈现输出,但在执行之前还会自动进行HTML编码。
<%= 直接插入值,而 <%: 则自动为您转义所有特殊字符。
换句话说,
<%: myString %>
与
<%= Server.HtmlEncode(myString) %>
IHtmlString
接口,它还提供了避免 HTML 编码的功能 -- 因此,执行自己编码的类型不需要特殊处理。 - Richard