12<% %>
<%# EVAL() %>
谢谢在MSDN上查阅Web窗"/>

关于.net:在ASP.NET中,在.aspx中内联代码有哪些不同的方式?

关于.net:在ASP.NET中,在.aspx中内联代码有哪些不同的方式?

In ASP.NET, what are the different ways to inline code in the .aspx?

我可以为这些商品和其他商品获得一个"何时使用"的信息吗?

1
2
<% %>
<%# EVAL() %>

谢谢


在MSDN上查阅Web窗体语法参考。

有关基础知识,

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

  • 用于将文本添加到您的标记中;也就是说,它等于

    '>

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

链接的文章中提到的其他部分虽然用途也很普遍,但也很少见。


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

1
<%$ Resources:resource, welcome%>

和asp.net会自动在附属程序集中查找" welcome"的本地化版本。


您也可以使用

<%= Class.Method() %>

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


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

1
<%:"alert('Hello XSS')" %>

可以使用上面的内容代替被爱人。

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

推荐阅读