ASP.NET "special"标签

标签 asp.net syntax tags

像这样的“特殊”ASP.NET 标记的正式名称是什么:

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

我似乎无法弄清楚这些的概念或众所周知的名称,因此我在搜索更多信息时遇到了困难。作为奖励,任何人都可以给我一个所有可能的“特殊标签”的快速概要以及它们每个标签的作用(或为我指出一个资源)?

最佳答案

正式名称为“server-side scripting delimiters ”或“ASP.NET inline expressions ”。 Visual Studio 2008 语法突出显示设置对话框将这些称为“HTML 服务器端脚本”。微软人员在他们的博客中称它们为“代码块”。

  • <%@ %>Directive for ASP.NET Web Pages 。用于页面和控件来配置页面/控件编译器设置 ( <%@ Control Inherits="MyParentControl" %> )。
    • <%@ %>也是 Application Directive 。用于指定 global.asax 的应用程序特定设置。与页面指令不同,因为它仅使用不同的标签集。
  • <% %>Code Render Block (for inline code)Embedded Code Blocks 的 4 种形式之一。用于将服务器端代码包含到 Render() method生成的类的 ( <% x = x + 1; %> )。格式:单行/多行或多链接(例如 if/then/else 散布在 html 中),但不能用于声明函数。
  • <%= %>Code Render Block (for inline expressions) 。用作 <%Response.Write(value)%> 的简写
  • <%: %> (非官方的“Html Encoding Code Block ”)与之前的相同,但输出是 HTML 编码的。
  • <%# %>Data-binding Expression 。用于通过 Eval 进行单向(只读)或双向(可更新)绑定(bind), Xpath , Bind 、或表达式(例如下拉控件的选定值)。通过控件的属性标记将表达式绑定(bind)到数据绑定(bind)控件属性,或者作为生成 DataBoundLiteralControl 的单独标记。其值为 Text 的实例属性(property)。表达式由 DataBinding 求值控件的事件处理程序。
  • <%#: %>HTML Encoded Data-Binding Expression (ASP.NET 4.5 中的新增功能)。它结合了 <%# %> 的功能和<%: %> .
  • <%$ %>ASP.NET Expression Builder 。用于通过服务器标记属性对控件属性进行运行时表达式绑定(bind)。与 AppSettings 一起使用, ConnectionStrings ,或Resources (或 your own custom extension ,例如使用代码隐藏属性)。这些分配被添加到 OnInit()生成的类的方法。
  • <%-- --%>Server-Side Comment 。用于从编译中排除内容(因此如果在代码隐藏中引用注释掉的控件,则会生成错误)。与 html 注释不同,内容将不会包含在输出中。
  • <!-- #Include ... -->Server-Side Include Directive 。用于将文件的内容插入到页面、控件或全局文件中。在用户控件过度使用且无法使用母版页的情况下很有用。

还有一个Code Declaration Block ,最终的嵌入式代码块形式。

<script runat="server">
bool IsTrue() {
  return false;
}
</script>

这用于将附加成员(方法等)包含到从 ASP.NET 标记生成的类中。这些仅提供过 "primarily to preserve backward compatibility with older ASP technology"不建议使用。

关于ASP.NET "special"标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/649428/

相关文章:

asp.net - 我在服务器上使用的解决方案是哪个machine.config文件?

sql - SQL 函数调用中的竖线是什么意思?

python - 什么是 Python 映射?

java - 模糊的条件 Java 语法

ios - 创建自定义 tableView 单元格 textField 或 textView 标签

javascript - Tag-it (UL LI) 字段未正确验证

javascript - 如何使用 javascript 在定义的时间延迟后动态更改 <p> 标记数据?

jquery - 下拉选择的背景图片更改

c# - 按 session 共享变量

javascript - 使用 Javascript 动态创建标签