ASP.NET页的客户端

软件行业的一个趋势是将许多编写代码的工作量转移到基本平台的基础结构。众多开发平台只是要求 开发人员使用相对宽松的语法,在较高级别上对所需的信息进行描述,而不是按照一组严格的语法规则进 行逐字节的硬编码。现在,开发人员经常使用 XML 语言来描述所需的结果,通过编译器或运行时引擎对 内容进行分析,并将其处理成传统的可执行代码。

例如,Windows Presentation Foundation(.NET Framework 3.0 的支柱之一)使用 XAML 作为 基于 XML 的呈现语言,以描述表单用户界面。Microsoft AJAX 库(以前代码名为 ASP.NET“Atlas”的系统的一部分)使用其 XML-Script 元语言将相同原则应用于富文本网页 (尽管从技术上看,XML-Script 不属于其核心发布内容,而是作为非官方示例技术进行共享)。XML- Script 是声明性布局语言,它将 HTML 元素和脚本组合在一起,形成虚拟的客户端控件。最终,XML- Script 为客户端页面引入了逻辑处理和功能。

使用声明性语言创作网页和表单有几个优点。通过 采用此方式,服务器端组件可以更方便地生成页面和表单,而不必生成实际的 Visual Basic、C# 或 JavaScript 代码。此外,对于诸如 Visual Studio 这样的创作工具,声明性标记就其本质而言 更容易进行设计。从体系结构角度来看,采用声明标记的方式,所指定的是页面元素的行为,而不是这些 元素如何实现这类行为。这样,就可以创建更多的抽象层。

第一个利用这种模型的具体编程环境 是 ASP.NET(从版本 1.0 开始)。正如大多数 Web 开发人员现在所知的,ASP.NET 页通常是在一、两个 文件中进行编写的:一个 .aspx 标记文件和一个可选的代码隐藏文件。代码隐藏文件中包含了以任何受 支持的编程语言(通常是 Visual Basic 或 C#)所编写的类文件。.aspx 标记文件包含形成页面结构的 HTML 标记、ASP.NET 控制标记和文字(它还可以包含代码)。此文本将在运行时进行分析,并转换成页 类。这样的页类,在与代码隐藏类和一些系统生成的代码组合之后,共同形成可执行代码,以处理任何提 交的数据,并生成响应,然后将其发送回客户端。

虽然这个总体模型为绝大多数 ASP.NET 开发人 员所知,但还是存在很多只有少部分开发人员有深入了解的“黑洞”。MSDN、相关书籍 和在线文章对页面机制的各个方面进行了解释,但仍然缺少对页面内部机制进行的全面而统一的介绍。如 果看一看 ASP.NET 页的 HTML 源代码,就会发现很多您可能几乎不了解的隐藏字段和自动插入的 JavaScript 代码块。但是,正是在这些字段和代码块的支持下,网页才能正常工作。在本专栏中,我将 分析 ASP.NET 页所生成的客户端源代码。我不单要讨论如视图状态这类大家熟悉的隐藏字段,而且还会 涉及到一些少有人知的隐藏字段,例如,控件状态、事件验证、事件目标和参数,以及系统提供的脚本代 码。

我在此处讨论的很多实现细节均是针对当前的 ASP.NET 版本而言的。这些细节在将来的版本 中会有所更改(相对于过去的版本已有了更改),因此您不应当构建任何依赖于不成文细节的运行代码。

时间: 2024-10-03 06:10:50

ASP.NET页的客户端的相关文章

从 ASP Web 页返回 XML

概要从 Active Server Pages (ASP) Web 页返回 XML 数据是一种常见的编程要求. 实现此要求所用的方法因用来托管 ASP 应用程序的 Microsoft Internet 信息服务 (IIS) 的版本而异. 本文中的分步指南带有相关的示例代码,演示了怎样从 ASP 页返回可扩展标记语言 (XML) 数据.  下面的示例代码创建一个 ASP 页,此页返回XML 格式的 ActiveX Data Objects (ADO) 记录集的内容. 此代码连接着 SQL Serv

领先技术:ASP.NET AJAX和客户端模板

对于 ASP.NET AJAX 应用程序开发而言,人们非常乐衷于使用部分呈现,其主要原因在于其固有的简单性 - 对现有页面影响较小,对开发人员的技能要求较低.但是,部分呈现仅仅是一个在执行回发请求的过程中绕过浏览器的小技巧.使用部分呈现的页面并不是真正意义上的 AJAX 页面,因为它们仍然依赖于以前的回发方法.那么究竟什么才算是真正的 AJAX 应用程序? 实际上,真正的 AJAX 应用程序使用 XMLHttpRequest 对象绕过浏览器并与 Web 服务器及任何托管 HTTP 端点建立直接通

从ASP Web页返回XML

  概要 从 Active Server Pages (ASP) Web 页返回 XML 数据是一种常见的编程要求. 实现此要求所用的方法因用来托管 ASP 应用程序的 Microsoft Internet 信息服务 (IIS) 的版本而异. 本文中的分步指南带有相关的示例代码,演示了怎样从 ASP 页返回可扩展标记语言 (XML) 数据. 下面的示例代码创建一个 ASP 页,此页返回XML 格式的 ActiveX Data Objects (ADO) 记录集的内容. 此代码连接着 SQL Se

从 ASP.NET 服务器控件插入客户端脚本(引自MSDN中文网站)

asp.net|插入|服务器|脚本|客户端|控件|中文 简介 尽管从技术角度讲,Microsoft? ASP.NET 服务器控件的所有功能都可以在服务器端执行,但通常情况下通过添加客户端脚本可以大大增强服务器控件的可用性.例如,ASP.NET 验证 Web 控件可以在服务器端执行所有的验证检查.但是,对于高版本浏览器,验证 Web 控件也会发送客户端脚本,以在客户端进行验证.这就是说,这些浏览器的用户可以获得响应效果更好的动态体验. 在开发 ASP.NET 服务器控件时,您不妨问问自己,如何才能

ASP.NET MVC的客户端验证:jQuery的验证

之前我们一直讨论的Model验证仅限于服务端验证,即在Web服务器根据相应的规则对请求数据实施验证.如果我们能够在客户端(浏览器)对用户输入的数据先进行验证,这样会减少针对服务器请求的频率,从而缓解Web服务器访问的压力.ASP.MVC 2.0及其之前的版本采用ASP.NET Ajax进行客户端验证,在ASP.NET MVC 3.0中,jQuery验证框架被引入是我们可以采用Unobtrusive JavaScript的方式进行客户端验证. 一.Unobtrusive JavaScript Un

asp.net服务器端获取客户端文件的创建时间

问题描述 asp.net服务器端获取客户端文件的创建时间 asp.net系统客户端批量上传文件,怎么在服务器端获取客户端的这些文件的创建时间!

asp.net页能够读取自已网站中某页上的资料吗?

问题描述 情况是这样的.有个asp.net页default.aspx.之下是一个文件夹,会不断地放入html静态页面.有多少是不知道的.这个default.aspx能否读到这些html的<title></title>信息.在自身页面上生成一个list.到数据库读取数据就多了.现在要读取自身网站内的信息.asp.net能否办到呢? 解决方案 解决方案二:应该办是能办到不过存在效率问题呀至少要有类似缓存之类的机制解决方案三: 解决方案四:楼上说的对.可以做的,可是效率是大问题.解决方案

aso.net传值-html页面如何接收asp.net页面的session值

问题描述 html页面如何接收asp.net页面的session值 这是一个asp.net页面,想要将用户名传到一个html页面并打印出来,求具体代码 解决方案 在你的asp.net里面写 <% =Session["用户名"] %> 解决方案二: ASP.net 关闭页面时清空SessionASP.net 关闭页面时清空Session

asp.net-ASP.NET MVC 客户端验证的问题

问题描述 ASP.NET MVC 客户端验证的问题 ASP.NET MVC进行客户端表单验证后服务器端为什么还进行验证?是无刷新服务器验证么? 解决方案 服务器验证是必不可少的,因为客户端不可信任,用户可以伪造客户端的请求.