【asp源码栏目提醒】:网学会员--在 asp源码编辑为广大网友搜集整理了:ASP NET 4 0网页语法概述 - 编程语言绩等信息,祝愿广大网友取得需要的信息,参考学习。
ASP.NET 网页语法概述.NET Framework 4
ASP.NET 网页的创建方式与静态 HTML 网页不包含基于服务器处理的页面的创建方式相似但前者包含在页面运行时由
ASP.NET 识别和处理的其他元素。
区别
ASP.NET 网页与静态 HTML或其他页的特征如下 文件扩展名为 .aspx而其他文件扩展名。
.aspx 文件扩展名可使
ASP.NET 对页面进行处理。
在 Internet 信息服务 IIS 中将文件扩展名映射到
ASP.NET。
默认情况下.aspx 页由
ASP.NET 运行而 .htm 和 .html 页不是。
可选的 Page 指令或其他指令适合于正在创建的页面类型。
为
ASP.NET 正确配置的 form 元素。
只有页面所含控件的值在页面处理期间要使用时才需要 form 元素。
Web 服务器控件。
如果您向页面添加自己的代码则为服务器代码。
如果希望页面符合 XHTML 标准则必须包含其他元素如 DOCTYPE 元素。
有关详细信息请参见 Visual Studio 和
ASP.NET 中的 XHTML 标准。
以下各节提供有关这些元素的更多详细信息。
可以使用 .aspx 文件扩展名对任何 HTML 页进行重命名然后该页将作为
ASP.NET 网页运行。
但是如果页面不涉及服务器处理则不需要向其添加 .aspx 文件扩展名因为这会增加页面处理的系统开销。
ASP.NET 网页示例 下面的代码示例演示一个页面它包含组成
ASP.NET 网页的基本元素。
该页面包含 HTML 页中可能含有的静态文本以及特定于
ASP.NET 的元素。
特定于
ASP.NET 的元素将突出显示。
为清楚起见此示例页不配置为符合 XHTML。
详细信息请参见 Visual Studio 和
ASP.NET 中的 XHTML 标准。
安全说明 此示例页包含一个接受用户输入的文本框这将是一个潜在的安全威胁。
默认情况下
ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。
有关更多信息请参见脚本侵入概述。
Welcome to
ASP.NETType your name and click the button. 指令
ASP.NET 页通常包含一些指令这些指令允许您为相应页指定页属性和配置信息。
这些指令由
ASP.NET 用作处理页面的指令但不作为发送到浏览器的标记的一部分呈现。
最常用的指令为 Page 指令该指令允许您为页面指定多个配置选项包括 页面中代码的服务器编程语言。
页面是将服务器代码直接包含在其中称为单文件页面还是将代码包含在单独的类文件中称为代码隐藏页面。
在前面的示例中页面为单文件页面代码直接包含在页面中而 Page 指令不包含有关链接类文件的信息。
有关更多信息请参见本主题后面部分的“服务器代码”一节以及
ASP.NET 网页代码模型和
ASP.NET 网页中的嵌入式代码块。
调试和跟踪选项。
页面是否具有关联的母版页是否应据此将其视为内容页。
如果页面中不包含 Page 指令或者该指令不包含特定设置则从 Web 应用程序的配置文件Web.config 文件或站点配置文件Machine.config 文件继承设置。
除了包含 Page 指令之外还可以包含支持附加页面特定选项的其他指令。
其他常用指令如下 Import 此指令允许您指定要在代码中引用的命名空间。
OutputCache 此指令允许您指定应当缓存页面可同时指定有关何时缓存该页面、将该页面缓存多长时间的参数。
Implements 此指令允许您指定页面实现 .NET 接口。
Register 此指令允许您注册其他控件以便在页面上使用。
Register 指令声明控件的标记前缀和控件程序集的位置。
如果要向页面添加用户控件或自定义
ASP.NET 控件则必须使用此指令。
某些类型的
ASP.NET 文件使用 Page 之外的指令。
例如
ASP.NET 母版页使用 Master 指令而
ASP.NET 用户控件使用 Control 指令。
每个指令都允许您指定适合文件的不同选项。
有关详细信息请参见
ASP.NET 母版页和
ASP.NET 用户控件。
有关指令的更多信息请参见
ASP.NET 网页指令。
窗体元素 如果页面包含允许用户与页面交互并提交该页面的控件则该页面必须包含一个 form 元素。
可以使用标准 HTML form 元素但要适用某些规则。
使用 form 元素的规则如下 页面只能包含一个 form 元素。
form 元素必须包含 runat 特性且其值必须设置为 server。
此特性允许您在服务器代码中以编程方式引用页面上的窗体和控件。
可执行回发的服务器控件必须位于 form 元素之内。
开始标记不得包含 action 特性。
ASP.NET 可在处理页面时动态设置这些特性重写您所做的任何设置。
Web 服务器控件 在大多数
ASP.NET 页中您将添加允许用户与页面交互的控件包括按钮、文本框、列表等。
这些 Web 服务器控件与 HTML 按钮和 input 元素类似。
但这些控件在服务器上处理允许您使用服务器代码对其属性进行设置。
这些控件还引发可以在服务器代码中进行处理的事件。
服务器控件使用一种特殊的语法当页面运行时由
ASP.NET 识别这种语法。
下面的代码示例演示一些典型的 Web 服务器控件。
TextBox 接受用户输入这将是一个潜在的安全威胁。
默认情况下
ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。
有关更多信息请参见脚本侵入概述。
ASP.NET 服务器控件的标记名称以前缀开头在此情况下为
asp:。
如果该控件不是 .NET Framework 的一部分则前缀可能会有所不同。
ASP.NET 服务器控件还包含 runatserver 特性和一个可选的 ID您可以使用这个 ID 在服务器代码中引用该控件。
当页面运行时会对服务器控件进行标识并运行与这些控件关联的代码。
许多控件会将一些 HTML 或其他标记呈现在页面中。
例如
asp:textbox 控件将具有 typetext 特性的 input 元素呈现在页面中。
但是不一定要建立 Web 服务器控件与 HTML 元素间的一对一映射。
例如
asp:calendar 控件呈现一个 HTML 表。
有些控件不会向浏览器呈现任何内容这些控件只在服务器上接受处理并向其他控件提供信息。
将 HTML 元素作为服务器控件 除了使用
ASP.NET 服务器控件之外还可以将普通的 HTML 元素作为服务器控件使用。
可以将 runatserver 特性和 ID 特性添加到页面的任何 HTML 元素中。
页面运行时
ASP.NET 将该元素标识为服务器控件并使其可用于服务器代码。
例如可以向 HTML body 元素添加所需元素如下面的代码示例所示。
然后可以在服务器代码中引用 body 元素例如在运行时根据用户输入或数据库信息设置正文的背景色。
有关更多信息请参见
ASP.NET Web 服务器控件概述。
服务器代码 大多数
ASP.NET 页包含当处理页面时在服务器上运行的代码。
ASP.NET 支持多种语言包括 C、Visual Basic、J、Jscript 和其他语言。
ASP.NET 支持两种编写网页服务器代码的模型。
在单文件模型中页面的代码位于 script 元素中该元素中的开始标记包含 runatserver 特性。
本主题前面的示例演示了单文件模型。
或者可以在单独的类文件中创建页面的代码这种方法称为代码隐藏模型。
在这种情况下
ASP.NET 网页一般不包含服务器代码。
而 Page 指令会包含一些信息这些信息将 .aspx 页与其关联的代码隐藏文件链接起来。
下面的代码示例演示某页的一个典型 Page 指令该页包含代码隐藏文件。
CodeFile 特性指定单独的类文件的名称Inherits 特性指定与页面对应的代码隐藏文件中类的名称。
特性 CodeFile 用于网站项目对于 Web 应用程序项目同一特性名为 CodeBehind。
有关这些 Web 项目类型之间的其他差异的信息请参见 Web 应用程序项目与网站项目。
有关更多信息请参见
ASP.NET 网页代码模型。
ASP.NET 网页还可以包含在浏览器中运行以响应客户端事件的客户端脚本。
ASP.NET 页既可以包含客户端脚本又可以包含服务器代码。
有关详细信息请参见
ASP.NET 网页中的客户端脚本。
ASP.NET 网页概述 可以使用
ASP.NET 网页作为 Web 应用程序的可编程用户接口。
ASP.NET 网页在任何浏览器或客户端设备中向用户提供信息并使用服务器端代码来实现应用程序逻辑。
ASP.NET 网页有下列特点 基于 Microsoft
ASP.NET 技术。
在该技术中在服务器上运行的代码动态地生成到浏览器或客户端设备的网页输出。
兼容所有浏览器或移动设备。
ASP.NET 网页自动为样式、布局等功能呈现正确的、符合浏览器的 HTML。
兼容 .NET 公共语言运行时所支持的任何语言例如 Microsoft Visual Basic 和 Microsoft Visual C。
基于 Microsoft .NET Framework 生成。
它提供了 Framework 的所有优点包括托管环境、类型安全性和继承。
具有灵活性因为您可以向它们添加用户创建的控件和第三方控件。
ASP.NET 网页的组件 在
ASP.NET 网页中用户界面编程分为两个部分可视组件和逻辑。
如果您以前使用过类似于 Visual Basic 和 Visual C 的工具您将认同在页的可视部分和与之交互的代码之间存在这样一种划分。
可视元素由一个包含静态标记例如 HTML 或
ASP.NET 服务器控件或两者的文件组成。
ASP.NET 网页用作要显示的静态文本和控件的容器。
ASP.NET 网页的逻辑由代码组成这些代码由您创建以与页进行交互。
代码可以驻留在页的 script 块中或者单独的类中。
如果代码在单独的类文件中则该文件称为“代码隐藏”文件。
代码隐藏文件中的代码可以使用 Visual Basic、C 或任何其他 .NET Framework 语言编写。
有关如何构建
ASP.NET 网页的更多信息请参见
ASP.NET 网页代码模型。
对于
ASP.NET 网站项目可以将网页源代码部署到 Web 服务器上当用户首次浏览站点中的任何页面时会自动编译页面。
您也可以选择预编译站点以便在用户首次浏览页面时不会存在编译延迟。
对于
ASP.NET Web 应用程序项目必须在部署之前编译网页并部署一个或多个程序集。
有关这两种项目类型在网页编译方式方面的差异的更多信息请参见 Web 应用程序项目与网站项目
ASP.NET 网页帮助您完成哪些任务 Web 应用程序编程带来了一些特殊的难题在对传统的基于客户端的应用程序进行编程时通常不会遇到这些难题。
这些难题包括 实现多样式的 Web 用户界面 使用基本的 HTML 功能来用户接口既困难又费事特别是在页具有复杂布局且包含大量动态内容和功能齐全的用户交互对象时。
客户端与服务器的分离 在 Web 应用程序中客户端浏览器和服务器是不同的程序它们通常在不同的计算机甚至不同的操作系统上运行。
因此共同组成应用程序的这两个部分仅共享很少的信息它们可以进行通信但通常只交换很小块的简单信息。
无状态执行 当 Web 服务器接收到对某页的请求时会找到该页对其进行处理将其发送到浏览器然后丢弃所有页信息。
如果用户再次请求同一页服务器则会重复整个过程从头开始对该页进行重新处理。
换言之服务器不会记忆它已处理的页 - 页是无状态的。
因此如果应用程序需要维护有关某页的信息其无状态的性质就成为了一个问题。
未知的客户端功能 在许多情况下Web 应用程序可供许多使用不同浏览器的用户进行访问。
浏览器具有不同的功能因此很难创建将在所有浏览器上都同样正常运行的应用程序。
数据访问方面的复杂性 对位于传统 Web 应用程序中的数据源进行读取和写入非常复杂并且会消耗大量资源。
可缩放性方面的复杂性 在许多情况下由于应用程序的不同组件之间缺乏兼容性导致用现有方法设计的 Web 应用程序未能实现可伸缩性的目标。
对于发展周期较短的应用程序这往往是一个常见的导致失败的方面。
若要解决这些 Web 应用程序的难题可能需要大量的时间和精力。
ASP.NET 网页和
ASP.NET 页框架通过以下几个方面来处理这些难题 直观、一致的对象模型
ASP.NET 页框架提供了一种对象模型它使您能够将窗体当作一个整体而不是分离的客户端和服务器模块。
在此模型中您可以通过比在传统 Web 应用程序中更为直观的方式来对页进行编程其中包括能够设置页元素的属性和响应事件。
此外
ASP.NET 服务器控件是基于 HTML 页的物理内容以及浏览器与服务器之间的直接交互的一种抽象模型。
通常您可以按照在客户端应用程序中使用控件的方式使用服务器控件而不必考虑如何创建 HTML 来显示和处理控件及其内容。
事件驱动的编程模型
ASP.NET 网页为 Web 应用程序带来了一种您熟悉的模型该模型用于为客户端或服务器上发生的事件编写事件处理程序。
ASP.NET 页框架对此模型进行了抽象使捕获客户端上的事件、将其传输到服务器并调用适当方法等操作的基础机制都是自动的并对于您都是不可见的。
这样就得到了一个清晰的、易于编写的、支持事件驱动开发的代码结构。
直观的状态管理
ASP.NET 页框架会自动处理页及其控件的状态维护任务它使您能够以显式方式维护应用程序特定信息的状态。
这种状态管理无需使用大量服务器资源即可实现而且可以通过向浏览器发送 Cookie 来实现也可以不通过向浏览器发送 Cookie 来实现。
独立于浏览器的应用程序
ASP.NET 页框架允许您在服务器上创建所有应用程序逻辑而无需针对浏览器之间的差异进行显式编码。
但是它仍允许您利用浏览器特定的功能方法是通过编写客户端代码来提供增强的性能和更丰富的客户端体验。
.NET Framework 公共语言运行时支持
ASP.NET 页框架是在 .NET Framework 的基础上生成的因此整个框架可用于任何
ASP.NET 应用程序。
您的应用程序可以用与运行时兼容的任何语言编写。
此外数据访问通过 .NET Framework 提供的数据访问基础结构包括 ADO.NET得到了简化。
.NET Framework 可缩放服务器性能
ASP.NET 页框架使您能够将 Web 应用程序从一台只装有一个处理器的计算机有效地缩放到多计算机“网络场”并且无需对应用程序的逻辑进行复杂的更改。
上一篇:
ASP防注入代码
下一篇:
4种小菜缓解孕妈咪不适