ASP.NET 2.0的目的是为Web应用开发人员提供了构建企业级应用所需要的服务、编程模型和软件基础结构,从而简化Web应用开发的复杂度,并提供扩充Web应用功能的手段。从这一点来看,ASP.NET 2.0的指导思想和以前的ASP技术是一致的,而且ASP.NET 2.0在语法上也兼容微软以前推出的ASP脚本程序,但是ASP.NET 2.0并不是对ASP技术简单的移植和扩充,而是增加了许多新的特性,可以说是一个全新的Web开发平台,它是微软下一代软件开发环境Microsoft.NET框架的一部分,其地位是非常重要的。ASP.NET 2.0实际上是要为开发人员提供一个基于.NET 框架的Web开发平台,能够迅速构建、部署和运行各种规模的Web 应用。到,IIS服务器依然是通过ISAPI接口和ASP.NET 2.0进行交互,这说明ASP.NET 2.0和ASP技术的地位是相同的,它们分别是IIS不同的ISAPI扩展。但是ASP.NET 2.0的运行平台发生了变化,它不是直接运行在Win32的平台上,而是运行在.NET运行时 环境中,这种结构使得基于ASP.NET 2.0的Web应用更加健壮,因为即使Web应用出现问题,也不会影响到IIS服务器的运行,而且开发人员可以充分利用.NET平台的特性来增强Web应用,使之更加安全、功能更加强大。
和ASP技术一样,ASP.NET 2.0提供了一套完整的Web编程开发环境,而且这个编程模型更加完善,更易于扩展。以前熟知的几个ASP内置对象在ASP.NET 2.0中依然存在,但是被封装到一个HttpContext对象中,可以说,这个对象封装了用户HTTP请求及处理这个请求所需要的全部信息。HttpContext对象在用户请求到达时生成,然后通过一条ASP.NET 2.0运行时流水线(run-time pipeline)依次对它进行处理, 最后生成对用户的响应。和ASP技术相比,采用流水线方式处理用户请求,意味着处理流程的标准化,可以为开发人员提供一致的编程开发环境,为今后的程序维护和调试也带来了方便。而且ASP.NET 2.0运行时库通过流水线处理用户请求时,每一步都会产生相应的事件,开发人员可以编写自己的处理模块,通过响应这些事件来参与到用户请求的处理过程中,这样的机制可以使得开发人员能够更深入细致地控制用户请求处理过程中的每一个细节,从而实现各种复杂功能,可以更灵活地适应的Web应用的实际需要。显然,这个编程模型的可扩展性也更好,开发人员随时可以加入特定的处理模块来实现新的功能,以适应Web应用需求的变化和功能的扩展。
ASP.NET 2.0的另一个进步在于它支持页面和代码的分离。在ASP技术中,ASP脚本代码是和HTML代码混合在一起的,这样的编程方式使得网页的界面设计和功能设计代码互相交织,调试和修改都不方便,但是在ASP.NET 2.0中,页面和功能代码可以分别存放在两个文件中的,因此,界面设计和代码设计可以分别进行而互不影响,但是这两个文件也是有联系的,即在页面文件中必须指明相应的代码文件是哪一个。这样在编译时,这个页面对应的页面文件和代码文件会合并在一起,生成代表这个页面的Page类。当用户对这个页面的请求到来时, ASP.NET 2.0运行时会生成这个页面Page类的对象实例,然后执行其中程序代码处理用户请求,动态生成HTML页面,最后返回给用户。当然,为了兼容ASP技术,在ASP.NET 2.0页面文件中,除了HTML代码,也可以包含ASP脚本程序代码。
ASP.NET 2.0作为微软新一代Web开发平台,针对当前Web应用开发的需求,提出了很多优化措施。对于一些常用的Web功能,ASP.NET 2.0都带有内置的解决方案,免去了开发人员重复设计的负担,提高了开发效率。同时,为了更好地开发出基于HTTP协议的分布式网络应用,ASP.NET 2.0针对HTTP协议的特点,提出了一个更加完善的Web Form的编程模型,这个编程模型充分利用了HTTP协议的命令和特性,在客户和服务器之间建立了一个比较理想的通信和协作模式,能够自动地在用户的不同请求之间维护会话信息,从而克服了底层HTTP协议的无状态特性对Web应用的影响,使开发人员能够专注于Web应用本身业务逻辑的实现,而且ASP.NET 2.0的Web Form编程模型支持开发人员用事件驱动的方式开发应用程序,这一点和常见的Windows窗体编程模型非常类似,使得开发Web应用的编程环境更加友好,有效地降低了应用开发的复杂度。
总之,ASP.NET 2.0集成了Web开发所需要的大量实用的功能、工具和手段,为用户提供良好的Web开发环境。除此之外,ASP.NET 2.0还具有相当多的优势,特别是和.NET框架的紧密集成,使得用户能够使用.NET 框架提供的全部功能和特性,因此,在开发Web应用时,可以最大限度地利用.NET平台的优势,如可以同时用多种.NET平台的语言进行程序设计,可以利用.NET平台所特有的类型安全特性、错误处理和垃圾回收机制等增强程序的健壮性;同时,开发人员还可以利用.NET平台上的组件库来增强Web应用,进行界面设计和代码设计的手段更加地多样化,能够很容易地设计出功能强大的Web应用。因此,ASP.NET 2.0成为当前比较理想的新一代Web开发平台。
浙公网安备 33010602011771号