第1章ASP.NET4.0概述
ASP.NET是Microsoft.NETFramework中重要的组成部分,是基于.NET的Web开发程序类库。它提供了大量基础实现,用于建立和部署企业级Web应用程序,实现服务器与客户机的交互。同时,ASP.NET能够面向任何Web浏览器或设备提供更加安全、更富有可扩展性且更稳定的编程模型和基础架构。
本章以最新的.NETFramework4.0版本为基础,介绍.NETFramework基本架构、新增功能、组件、Web开发技术以及ASP.NET开发环境,并实地操作,部署一个基本的ASP.NET开发环境。
本章学习目标:
>了解.NETFramework技术
>了解ASP.NET4.0新特性
>了解Web前端开发的基本技术
>掌握配置ASP.NET4.0服务器的方法
>熟悉VisualStudio2010开发环境
>掌握配置ASP.NET开发的技术
>了解IIS服务器系统
1.1.NETFramework基础
.NETFramework技术是微软公司提供的一种致力于快速应用开发的通用编程框架,为开发者提供一种类似虚拟机技术的平台,允许开发者以通用的代码实现多种硬件架构和操作系统的应用程序,降低软件开发的成本,提高工作效率。
1.1.1Microsoft.NET简介
Microsoft.NET框架是微软公司面向下一代移动互联网、服务器应用和桌面应用的基础开发平台,是微软为开发者提供的基本开发工具,其中包含许多有助于互联网应用迅捷开发的新技术,如图1-1所示。
1.Microsoft.NET的产生
在传统的软件开发工作中,开发者需要面对的是多种服务器和终端系统,包括用于个人计算机的Windows操作系统、用于服务器的Windows服务器系统、非Windows系统(如FreeBSD、Linux和BSD)、用于平面设计的MacOSX操作系统,以及各种移动终端系统(如WindowsMobile、iOS、Android)等。
图1-1Microsoft.NET开发平台
在开发基于以上这些系统的软件时,开发者需要针对不同的硬件和操作系统,编写大量实现兼容性的代码,并使用不同的方式对代码进行编译。这一系列的问题,都给软件设计和开发带来很多困难。
以Windows操作系统为例,目前主要使用的Windows操作系统内核包括Win9X、NT4、NT5.0/5.1、NT6.0/6.1、WindowsCE、WindowsMobile6.X和WindowsPhoneOS等。在这些操作系统下进行软件开发,可使用的技术包括以下几种:
·用于图形图像开发的GDI、DirectX、OpenGL等技术。
·用于数据库操作的ADO、DAO、RDO、ODBC等技术。
·用于Web应用开发的ASP、JSP、PHP等技术。
·用于移动终端的XNA、HTML5等技术。
以上这些技术都有各自的标准和接口,相互不兼容。有些软件开发者必须学习和使用相同的技术才能实现协作;而企业在实施开发项目时,也需要聘用指定技术的开发人员,才能实现最终的产品。
基于以上问题,微软公司在21世纪初开发出一种致力于敏捷而快速的软件开发框架,其更加注重平台无关化和网络透明化,以CLR(CommonLanguageRuntime,通用语言运行时)为基础,支持多种编程语言,这就是Microsoft.NET框架。
2.Microsoft.NET的特点
Microsoft.NET框架是一个灵活、稳定的运行服务器端程序、富互联网应用、移动终端程序和Windows桌面程序的软件解析工具(类似虚拟机程序),也是软件开发的基础资源包,具有以下特点。
·统一应用层接口
.NET框架将Windows操作系统底层的API(ApplicationProgrammingInterface,应用程序接口)进行封装,为各种Windows操作系统提供统一的应用层接口,而消除了不同Windows操作系统带来的不一致性。用户只需直接调用API进行开发,无需考虑平台。
·面向对象的开发
.NET框架使用面向对象的设计思想,更加强调代码和组件的重用性,提供了大量的类库。每个类库都是一个独立的模块,供用户调用。同时,开发者也可以自行开发类库给其他开发者使用。
·支持多种语言
.NET框架支持多种开发语言,允许用户使用符合CLR规范的多种编程语言开发程序,包括C#、VB.NET、J#、C++等,然后再将代码转换为中间语言存储到可执行程序中。在执行程序时,通过.NET组件对中间语言进行编译执行。
3.Microsoft.NET的版本
Microsoft.NET框架与Windows操作系统和MicrosoftVisualStudio集成开发环境保持着紧密的联系,发布的版本也与这两者紧密相关,如表1-1所示。
表1-1Microsoft.NET框架版本
发布日期
版本
对应Windows版本
对应VisualStudio版本
2002年2月13日
1.0
WindowsXP
VisualStudio.NET
2003年4月24日
1.1
WindowsServer2003
VisualStudio.NET2003
2005年11月7日
2.0
VisualStudio2005
2006年11月6日
3.0
WindowsVista/WindowsServer2008
2007年11月19日
3.5
Windows7/WindowsServer2008R2
VisualStudio2008
2010年4月12日
4.0
VisualStudio2010
目前最新版本的.NET框架Microsoft.NETFramework4.0具有以下特性。
·图表控件
在开发.NETFramework4.0的应用程序时,开发者可以直接从VisualStudio2010中调用之前必须从Technet下载的图表控件,创建更具可视化效果的数据图表。
·托管扩展框架
托管扩展性框架(MEF)是.NETFramework4.0中的一个新库,可以帮助开发者创建可扩展和组合的应用程序,允许开发者指定应用程序中的扩展点,为其他应用程序服务。
·并行计算
针对越来越多支持多线程技术的处理器,.NETFramework4.0引入了一种新的编程模式,简化了应用程序和库开发者的编程。此模式可以帮助开发者在不使用线程或线程池时编写高效、具有可扩展性的并行计算程序。
·垃圾收集
.NETFramework4.0改进之前版本的并行垃圾收集机制,支持从后台进行垃圾收集,而提供更好的系统性能。
4.Microsoft.NET的应用
在微软公司发布.NET框架之初,该技术仅仅是一种面向WindowsXP和WindowsServer2003桌面应用的实现方式。随着富互联网应用和移动计算技术的发展,.NET框架不断得到增强,目前已经可以作为一种综合的开发平台,应用到多种领域。
·桌面应用
桌面应用是.NET框架最基本的应用,使用Microsoft.NET框架,开发者可以开发基于Windows2000/NT5以上版本桌面操作系统和服务器操作系统的桌面应用程序,并通过用户计算机的.NET组件实现本地文档和数据的操作。
使用.NET框架开发桌面程序,开发者只需要将精力专注于程序算法和架构的本身,不需再考虑这些桌面操作系统之间的差异。因此可以从繁杂的程序调试和兼容性测试工作中解放出来,极大地提高工作效率。
·服务器应用
服务器应用也是.NET框架的重要应用之一,使用.NET框架开发出的服务器应用程序名为ASP.NET程序。相比传统的ASP程序,.NET框架将网页分成前台页面和后台系统两个模块,将页面开发层和应用逻辑层完全隔离,提高网页开发的效率和代码的重用性,增强服务器应用程序的稳定性和安全性。
·Office增强功能
作为微软公司提供的开发工具,Microsoft.NET框架可以与微软公司开发的Office系列办公软件紧密地结合,开发应用于该软件的宏、加载项等,增强Office系列办公软件的功能,提高办公效率。
·富互联网应用
为抗衡Adobe公司开发的AIR(AdobeIntegratedRuntime,Adobe集成运行时)等富互联网应用技术,微软公司提出了Silverlight计划,通过.NET框架编写基于Web的多媒体应用程序,通过丰富的可视化元素实现用户体验。
·移动应用
Microsoft.NET框架不仅可以应用到个人计算机、工作站等平台上,还可以为一些移动计算设备提供支持,例如使用WindowsCE操作系统的PDA、使用WindowsMobile和WindowsPhone7等操作系统的智能手机等。开发者开发的.NET程序同样可以在这些设备上执行。
5.其他平台中的.NET框架
除了微软公司开发的桌面、服务器和移动设备操作系统外,.NET框架还可以应用在其他几种操作系统中,通过以下几种技术实现跨平台应用。
·SSCLI技术
SSCLI(MicrosoftSharedSourceCommonLanguageInfrastructure,微软共享源公共语言平台)是由微软公司提供的代码共享实现,可以允许在WindowsXP、FreeBSD、MacOSX等操作系统上执行.NET框架。
·Mono
……