asp.mvc中渲染的区别是什么

时间:2010-11-24 13:22:57

标签: asp.net-mvc model-view-controller

呈现服务器代码的运算符有何不同?

Operator: <%@
Operator: <%:
Operator: <%=

2 个答案:

答案 0 :(得分:9)

<%=只是计算表达式并将结果写入页面输出

<%:是相同的,但HTML也会对输出进行编码 - 除非输出实现了IHtmlString

<%@用于特殊框架指令,例如&lt;%@ Page用于指定页面属性,例如母版页

<%用于代码块,它们是语句,而不是表达式。除非您显式调用写入输出的函数,否则它们不会生成页面输出。

<%#用于数据绑定表达式,在webforms控件进行数据绑定时会对其进行求值。因此很少在MVC中使用它们。

答案 1 :(得分:1)

&lt;%:对结果进行html编码 &lt;%=等于Response.Write &lt;%@是预处理器derictive