【聚杰网Asp.Net】ASP.NET 2.0的新增服务、控件与功能微软开发专栏ASP.NET
在首次公诸于众以来的短短四年中,ASP.NET业已成为在Windows倾力支持的服务器上运行的Web应用程序的金科玉律,并且将runat="server"添加到供世界各地Web开发人员使用的词汇表中。它还为人们所认识的Web编程的前景提供了一些启示:Web编程将以能够呈现HTML和脚本以及激发事件的服务器端控件为中心。
在Microsoft .NET Framework的下一个主要版本中,ASP.NET 2.0将摆脱某些不完善的状况并发展为一种完全成熟的产品。它的目标是将完成常见Web编程任务所需的代码数量减少70%或更多。尽管该目标非常宏大,但是由于多种多样的新增服务、控件和功能(它们一定会使ASP.NET 2.0像ASP.NET 1.x之于ASP一样,使ASP.NET 1.x显著提高),该目标是可以实现的。
这里,我将为您粗略介绍一些期望在ASP.NET 2.0中看到的内容,对于几个精选的领域进行深入讨论并且提供一些示例程序来强调关键的功能。所有代码示例均针对ASP.NET 2.0的预测试版本生成和测试的,可能需要对某些代码示例进行修改,以便用于第一个测试版本。
母版页(Master Pages)
ASP.NET 1.x中最突出的缺点之一是它缺少对页面模板的支持。欠缺的是定义其他页面可以继承的“母版页”能力。开发人员通过使用用户控件(它们可以容易地在页面之间复制)创建页面来弥补这一缺陷。在ASP.NET 2.0中,由于加入了一个称作“母版页”的新增功能,所以不再需要这种技巧。想一想“可视化继承”,您就会理解母版页是干什么用的了。首先,您需要定义一个母版页(其中包含您希望在其他页面上显示的内容),并且使用ContentPlaceHolder控件来定义子页面可以将其内容插入的位置。然后,您需要生成子页面—SPX文件,它使用(类似于)如下所示的指令来引用母版页:
<%@ Page MasterPageFile="~/Foo.master" %>
在子页面中,您使用Content控件来填写母版页中的占位符。在浏览器中呈现子页面,出现的内容将是在母版页和子页面中所定义内容的完美组合。
代码1中所示的应用程序使用母版页来定义出现在每个页面上的页眉和页脚。子页面通过将Content控件插入母版页的ContentPlaceHolder中,从而在页眉和页脚之间插入内容。您应该注意匹配的ID和ContentPlaceHolderID,以及母版页中的@ Master指令。
母版页在ASP.NET对象模型中得到了充分支持。System.Web.UI.Page类的特点是具有一个名为Master的新属性,该属性使子页面可以用编程方式来引用它的母版页以及在其中定义的控件。母版页可以嵌套,并且可以包含能够在子页面中重写的默认内容。
此外,应用程序可以在Web.config中指定默认的母版页,如下所示:
单个子页面享有重写默认母版页和指定它们自己的母版页的自由。
最精彩的部分是Visual Studio 2005中对母版页的支持。当加载子页面时,IDE将显示母版页中定义的内容的灰色、只读版本,以及子页面中定义的内容的全色、完全可编辑版本。区分这两者很容易,并且如果要编辑属于母版页的内容,那么您需要做的全部事情只是在IDE中打开母版页。
有关母版页的更多深入内容,请参阅相关的文章。
以下相关文章您是否也应该阅读一下
ASP.NET Atlas简单控件介绍之界面控件微软开发专栏ASP.NET 让ASP.NET简便使用SCRIPT微软开发专栏ASP.NET ASP.NET 2.0 中的异步页功能应用微软开发专栏ASP.NET ASP.NET Atlas简单控件介绍之四大控件微软开发专栏.NET ASP.NET Atlas简单控件介绍之两个基类微软开发专栏ASP.NET ASP.NET Atlas对JavaScript的扩展微软开发专栏ASP.NET ASP.NET服务器控件编程之热身运动微软开发专栏ASP.NET 体验ASP.NET 2.0 中的异步页功能微软开发专栏ASP.NET ASP.NET入门随想之代言人微软开发专栏ASP.NET ASP.NET 2.0站点登录、导航与权限管理微软开发专栏ASP.NET






