大约有将近一百万名开发人员使用了.NET Framework的第一个版本来开发网站。所以在2003年的夏天,当从Microsoft传出将有新版本发布的传闻时,许多人的耳朵都竖了起来,这个新的版本将使得创建ASP.NET页面所需的代码行数减少70%。像这样大规模的提高生产效率在
程序设计中是不多见的。当ASP.NET 2.0的代码样例在2003年秋的Microsoft专业开发人员大会(Microsoft Professional Developer’s Conference)上演示时,结果比预计的还要好。以前使用ASP.NET的第一个版本程序员需要花费几个小时才能做出的页面,现在使用ASP.NET 2.0只需要几分钟就完成了。简单来说,在.NET Framework 2.0最终版本发布之后,任何继续使用第一个版本创建ASP.NET页面的程序人员都将花费大量的额外时间才能达到相同的结果。
也许就像其他任何领域一样,ASP.NET 2.0所提供的优势是能够方便地将数据集成进页面。程序员不再需要知道详细的连接、命令以及数据阅读器和数据适配器对象,就能执行普通数据任务了。对于初学者掌握能力,ASP.NET 2.0使得基本数据的使用简单易学,并且有能力进行更复杂的数据应用。
.NET Framework Microsoft开发出了作为基本原理的.NET和一系列技术,用于在互联网中让计算机共同工作。总的目标就是让信息和进程在大范围的系统和设备之间顺畅地交流。.NET不是一种语言,也不是一个特别的产品。更确切地说,它是一套标准和规范,并已经应用于自2002年以来Microsoft发布的所有产品中。
.NET包含了一种使用开放标准的XML格式交换信息的标准化格式。可扩展标记语言(Extensible Markup Language,XML)不需要请求者具备任何有关数据存储如何保存信息的专门知识—— 数据都以自描述的XML格式取出。同样地,目前几乎所有的数据存储都可以用XML来提供信息,这对于所有.NET数据客户都具有吸引力。
.NET支持软件的Web Services标准,可请求在使用了开放平台标准的简单对象访问协议(Simple Object Access Protocol,SOAP)和XML的远程软件上运行代码。.NET网站可以从另外一个网站上找到该网站所提供的服务,并使用这些服务。这样可以使得网站从其他的网站上获得HTML、计算后的结果或者数据集。
作为.NET开端的一部分,Microsoft发布了一套运行时编程工具和应用编程接口(API),称为.NET Framework,让开发团队能够创建.NET应用程序和XML Web Services。.NET Framework由公共语言运行库(Common Language Runtime,CLR)和一套统一的类库组成。
CLR为运行的应用程序提供了一个完全管理的执行环境,其中包括几个服务,例如程序集装载和卸载、进程和内存的管理、安全实施以及即时编译等。CLR名称的意思就是指能够用多种语言编写应用程序,并且将源代码编译成CLR能够读懂并运行的中间语言,而无需考虑原来所使用的语言。这种“语言独立性”就是CLR的关键特性(也是ASP.NET的特性),它允许开发人员使用自己喜欢的语言工作,比如C#、VB或者Cobol,都能够获得.NET Framework的常用特性。
.NET Framework还包括了一套类库,这套类库提供了每一个应用程序所需的常用功能。可以使用.NET Framework支持的任何语言来访问这些类库。由这些类库提供的服务(以及相应的命名空间)如下:
· 基本类型(System)
· 输入/输出(System.IO)
· 数据访问(System.Data)
· 安全(System.Security)
· 数据结构(System.Collections)
· 配置(System.Configuration)
· 连网(System.Net)
· 反射(System.Reflection)
· 全球化(System.Globalization)
· 绘画和制图(System.Drawing)
· 跟踪和诊断(System.Diagnostics)
· 窗口(客户端)应用程序模型(System.Windows.Forms)
· Web应用程序模型(System.Web)
注意,.NET Framework包含了两个应用程序编程模型,一个用于客户端应用程序(System.Windows.Forms),另一个用于基于Web的应用程序(System.Web)。本书着重讲解后一个模型。.NET Framework中的System.Web命名空间是.NET Framework的一部分,它提供了ASP.NET功能。换句话说,ASP.NET就是构建应用程序的所有.NET Framework的一部分。