代码之家  ›  专栏  ›  技术社区  ›  jason saldo

在ASP.NET中,在.aspx中内联代码的不同方法是什么?

  •  4
  • jason saldo  · 技术社区  · 16 年前

    我能给这些和其他的东西写一个“什么时候用”吗?

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

    谢谢

    4 回复  |  直到 16 年前
        1
  •  15
  •   bdukes Jon Skeet    16 年前

    退房 Web Forms Syntax Reference 在MSDN上。

    为基础,

    • <%%>用于纯代码块。我一般只在if语句中使用这个


      <DIV class=“authenticated”>

      <DIV class=“未经身份验证”>
    • 用于将文本添加到标记中;也就是说,它等同于

      <DIV class=<%=isLoggedin?“authenticated”:“未经身份验证”%>'>

    • <%#表达式%gt;与上面的表达式非常相似,但它是在数据绑定方案中计算的。这意味着可以使用这些表达式来设置runat=“server”控件的值,而这是用<%=%>语法无法做到的。通常,这是在数据绑定控件的模板内部使用的,但您也可以在页面中使用它,然后调用page.databind()(或control.databind())以使该代码进行计算。

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

        2
  •  2
  •   sergtk    16 年前

    您也可以使用

    <%= Class.Method() %>

    它将打印结果,就像在RubyonRails中一样。

        3
  •  2
  •   chakrit Dutchie432    16 年前

    只想添加,还有资源表达式

    <%$ Resources:resource, welcome%>
    

    ASP.NET会自动在附属程序集中查找本地化版本的“欢迎”。

        4
  •  1
  •   sevenkul    13 年前

    在ASP.NET 4.0中,提供了用于编写HTML编码内容的<%:%>语法。

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

    以上内容可代替“亲爱的”。

    <%= Html.Encode("<script>alert('Hello XSS')</script>")%>