2

我正在处理各种 asp.net 页面。

对于内联函数,我确实看到使用了 2 种不同的格式:

示例 1:

<p><%Response.Write(now())%></p>

我还看到另一个带有#:

示例 2:

<Asp:TextBox id="Textbox5" width="40" Text='<%# DataBinder.Eval(Container.DataItem, "Name") %>' runat="server" />

我想知道到底有什么不同,<%# vs <%

4

2 回答 2

5

这是堆栈上的一个很好的解释-

在 ASP.Net 中,<%= 和 <%# 有什么区别 [重复]

这些答案的摘要:

有几种不同的“蜜蜂叮咬”:

  • <%@- 页面/控制/导入/注册指令
  • <%$- 资源访问和表达构建
  • <%=- 显式输出到页面,相当于<% Response.Write( ) %>
  • <%#- 数据绑定。它只能在支持数据绑定的地方使用,或者如果您调用,则可以在页面级别使用
  • Page.DataBind()在您的代码隐藏中。
  • <%--- 服务器端注释块
  • <%:- 等效于<%=,但它也对输出进行 html 编码。
于 2013-07-17T16:00:53.717 回答
4

前者只是表示输出到页面的标记中的一些 .NET 代码。

后者使用数据绑定表达式语法绑定到特定对象。

于 2013-07-17T16:00:50.597 回答