我是 ASP.NET MVC 的新手。我见过<%= ... %>和<%: ... %>。我熟悉经典 ASP 时代的第一个,但不熟悉后者。两者有什么区别?
问问题
245 次
3 回答
11
<%= %>
- 相当于经典 ASP 中的 response.write。
<% %>
- 代表一个代码块,if,then else,for each,等等。
<%: %>
- 这是 .NET 4 的新快捷方式,它代表<%= html.encode(item) %>
链接到解释快捷方式的视频(这是一个短片):
于 2010-06-22T01:49:00.393 回答
4
使用 <%: 告诉 ASP.NET 4.0 对正在显示的值执行 Server.HtmlEncode()。
而使用 <%=,则由开发人员决定是否使用 Server.HtmlEncode()。
注意 HtmlEncode() 有助于避免跨脚本攻击。
有关更多信息,请参阅 ScottGu 在此处的帖子。
于 2010-06-22T01:49:08.847 回答
1
<%: expression %> 是 HTML 编码的表达式,在 ASP.NET 4 中引入
相当于 <%= HttpUtility.HtmlEncode(expression) %>
去这里了解更多细节。
于 2010-06-22T01:52:18.950 回答