4

我可以得到这些和其他的“何时使用”吗?

<% %>
<%# EVAL() %>

谢谢

4

4 回答 4

15

查看 MSDN 上的Web 窗体语法参考

对于基础知识,

  • <% %> 用于纯代码块。我通常只将它用于 if 语句


      <div class="authenticated">

      <div class="unauthenticated">
  • 用于将文本添加到您的标记中;也就是说,它等于

    <div class='<%= IsLoggedIn ? “认证”:“未认证”%>'>

  • <%# Expression %> 与上面的非常相似,但它是在 DataBinding 场景中评估的。这意味着您可以使用这些表达式来设置 runat="server" 控件的值,而使用 <%= %> 语法则无法做到这一点。通常这用于数据绑定控件的模板内部,但您也可以在页面中使用它,然后调用 Page.DataBind()(或 Control.DataBind())以使该代码进行评估。

链接文章中提到的其他内容不太常见,但当然也有它们的用途。

于 2008-08-26T14:38:11.363 回答
2

你也可以使用

<%= Class.Method() %>

它会打印结果,就像在 Ruby on Rails 中一样。

于 2008-08-26T14:38:45.933 回答
2

只想加,还有资源表达式

<%$ Resources:resource, welcome%>

并且 asp.net 会自动在附属程序集中查找“欢迎”的本地化版本。

于 2008-08-26T14:56:25.347 回答
1

在 ASP.NET 4.0 中,带有用于编写 html 编码的内容的 <%: %> 语法。

<%: "<script>alert('Hello XSS')</script>" %>  

以上可以用来代替belove。

<%= Html.Encode("<script>alert('Hello XSS')</script>")%>  
于 2011-12-13T11:29:11.920 回答