合成差异b / w<%= Html.LabelFor(model => model.studFatherName)%>和<%:Html.LabelFor(model => model.studFatherName)%>

时间:2012-02-21 06:51:57

标签: asp.net-mvc

我对mvc中使用的语法有点混淆。请告诉我下面这两种语法有什么区别:
<%= Html.LabelFor(model=> model.studFatherName) %>
<%: Html.LabelFor(model=> model.studFatherName) %>

1 个答案:

答案 0 :(得分:2)

<%: %>用于对值进行HTML编码,而<%= %>按原样输出值。例如:

<%= "<br/>" %>呈现为<br/>,而<%: %>呈现为&lt;br/&gt;。但有一个例外。如果参数是IHtmlString,那么<%: %>的行为与<%= %>完全相同,即它不会对值进行编码。由于LabelFor助手返回IHtmlString <%: Html.LabelFor(x => x.studFatherName) %>绝对等同于<%= Html.LabelFor(x => x.studFatherName) %>