我可以得到这些和其他的“何时使用”吗?
<% %>
<%# EVAL() %>
谢谢
查看 MSDN 上的Web 窗体语法参考。
对于基础知识,
<% %> 用于纯代码块。我通常只将它用于 if 语句
<div class="authenticated">
<div class="unauthenticated">
<div class='<%= IsLoggedIn ? “认证”:“未认证”%>'>
<%# Expression %> 与上面的非常相似,但它是在 DataBinding 场景中评估的。这意味着您可以使用这些表达式来设置 runat="server" 控件的值,而使用 <%= %> 语法则无法做到这一点。通常这用于数据绑定控件的模板内部,但您也可以在页面中使用它,然后调用 Page.DataBind()(或 Control.DataBind())以使该代码进行评估。
链接文章中提到的其他内容不太常见,但当然也有它们的用途。
你也可以使用
<%= Class.Method() %>
它会打印结果,就像在 Ruby on Rails 中一样。
只想加,还有资源表达式
<%$ Resources:resource, welcome%>
并且 asp.net 会自动在附属程序集中查找“欢迎”的本地化版本。
在 ASP.NET 4.0 中,带有用于编写 html 编码的内容的 <%: %> 语法。
<%: "<script>alert('Hello XSS')</script>" %>
以上可以用来代替belove。
<%= Html.Encode("<script>alert('Hello XSS')</script>")%>