什么是< %%>在asp.net中调用的构造?

时间:2009-10-06 12:58:29

标签: .net asp.net

我是ASP.Net的新手,我在这里有点困惑。

在线学习ASP.Net的同时,我注意到一些专家使用一些关键词绑定数据并在源代码中自动增加日期,例如<%#Container.DataItemIndex + 1 %><%#Eval("Itemid")%>,{ {1}}或<%#DataBinder.Eval(Container.DataItem, "itemStock")%>

有什么叫做的构造,我在哪里可以获得这些关键词的列表并附上解释?

8 个答案:

答案 0 :(得分:3)

这些通常被称为内联标签,请注意,因为有很多不同的类型。

您可以在此处找到每种类型的详细说明:

http://naspinski.net/post/inline-aspnet-tags-sorting-them-all-out-(3c25242c-3c253d2c-3c252c-3c252c-etc).aspx

OR

http://forums.asp.net/p/1049167/1478431.aspx#1478431

答案 1 :(得分:3)

也称为Bee-Stings:
In ASP.Net, what is the difference between <%= and <%#

  • <%@ - 页面/控制/导入/注册指令
  • <%$ - 资源访问和表达式构建
  • <%= - 显式输出到页面,相当于<% Response.Write( ) %>
  • <%# - Data Binding.它只能在支持数据绑定的情况下使用,如果您在代码隐藏中调用Page.DataBind(),则只能在页面级别使用。
  • <% - - 服务器端评论栏
  • <%: - 相当于<%=,但also HTMLEncodes() the output

答案 2 :(得分:2)

他们是server side scripting delimiters。这里有一个完整的解释:

ASP.NET "special" tags

答案 3 :(得分:0)

ASP.NET标记语法在MSDN中有完整记录,包含代码示例以及指向相关对象和方法的链接。启动MSDN并在索引中搜索这些内容:

<%#
<%$
<%@
<%=

答案 4 :(得分:0)

@rahul,我认为你真的需要阅读一些关于ASP.net的书籍,了解这些基本的东西。

符号<% %>用于将.net内容放入标记中,该标记将被评估并替换为表达式的结果。

术语<%# Container.DataItemIndex + 1 %>表示在向DataGridView添加一个之后将当前项的索引放入DataGridView等中。容器是用于显示网格,数据列表等数据的对象。

术语<%#Eval("Itemid")%>表示从对象(表格,自定义对象等)获取 Itemid 列或属性的值。

术语<%# DataBinder.Eval(Container.DataItem, "itemStock")%>执行与上述相同的操作,但有点旧。

术语<%=sectionId%>将输出html标记中代码隐藏文件中定义的受保护或公共变量 sectionId

答案 5 :(得分:0)

这些关键字通常称为“盲法”。 您可以获得更多信息:GoodLink

答案 6 :(得分:0)

我认为它们被称为expressions

它们实际上非常强大,可以自定义。

答案 7 :(得分:0)

这些关键字称为Expressions

它们帮助我们在运行时将信息设置到页面中。例如,如果您定义某个面板的宽度,可以将其作为应用程序设置放入web.config中,以便页面可以从那里读取其值,这意味着值是动态的

您也可以通过声明&lt;%#,&lt;%$,&lt;%=标签来访问代码页,以便您可以访问页面属性等。

有很多文档,您可以定义自定义表达式,如Eval,Bind等。

来源清单:
Five Undiscovered Features on ASP.NET
ASP.NET Extensibility
Express yourself with Custom Expression Builders