第三部分
第6章 ASP.NET应用开发环境
6.1 ASP.NET概述
6.1.1 ASP.NET简介
ASP. NET是个统一的Web开发平台,它是.NET框架(.NET Framework)中专门用来开发Web应用程序的一个框架,在这个框架下可以采用VB.NET、C#(读作C Sharp)等其他.NET语言,开发Web应用程序,生成企业级Web应用程序所需要的各种服务。虽然ASP.NET有很大一部分的语法与ASP兼容,但是它提供了一个全新的程序设计模型与架构,使能够生成功能更强大更完善的应用程序。由于ASP.NET完全架构在.NET框架的支撑体系下,这又使得用户能够更好地利用公共语言运行库(Common Language Runtime, CLR)、类型安全性、继承性以及该平台的其他各项特性。
ASP. NET是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的Web应用程序。它的优点突出表现在以下几个方面。
(1)效率增强:ASP.NET是在服务器上运行的是编译后的公共语言运行库代码,它可利用早期绑定、实时编译、本机优化和盒外缓存服务等技术,开发效率显著提高。
(2)灵活方便:ASP.NET基于公共语言运行库,使得Web应用程序开发人员可以充分利用整个平台,有极大的灵活性。ASP.NET与语言无关,可跨多语言分割应用程序,可以用VB.NET、C#或JavaScript多种语言来编写。此外,如.NET框架类库、消息处理和数据访问解决方案都可从Web无缝访问。
(3)多功能性:ASP.NET框架扩充了Visual Studio集成开发环境中的大量工具箱和设计器,以及所见即所得编辑、拖放服务器控件和自动部署等功能,ASP.NET可以向目标服务器直接复制组件,也可以用自定义组件扩展或自动逐步替换ASP.NET运行库的任何子组件。因此开发工具十分强大。
(4)开发简单:在ASP.NET框架下,从简单的窗体提交,客户端身份验证到站点配置都变得十分容易。例如:ASP.NET页框架可以生成将应用程序逻辑与表示代码分开的用户界面,可以在类似于Visual Basic的简单窗体模型环境下处理事件。
(5)可缩放重用:ASP.NET增加了专门用于在聚集环境和多处理器环境中提高性能的功能。应用程序逻辑与表示代码分离,使得程序的可重用性大大地提高了。
(6)安全管理:借助于内置的Windows身份验证对每个应用程序的配置,ASP.NET可以保证应用程序是安全的。另外,ASP.NET运行库可以密切监视和管理进程。同时ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序的管理。
6.1.2 .NET框架及工作原理
.NET的核心目标之一就是要搭建第三代互联网平台,帮助用户能够在任何时候、任何地方、利用任何工具都可以获得网络上的信息,享受网络通信所带来的快乐。这种网络平台将打破不同的上网设备、不同的操作系统、不同的网站以及各大机构和工业界的网络障碍,使网站之间协同合作,自动交流,最大限度地共享资源。.NET框架正是为了满足以上需求而提供的基础架构,.NET框架提供了应用程序模型及关键技术,让开发人员容易用原有的技术来产生和部署并继续发展具有高安全性、高稳定性和高延展性的WebServices。为此,微软发起软件技术的一次大革命,推出了Visual Studio.NET,这是一个开发VB.NET、C#、ASP.NET等应用程序的总框架,这个架构器包括开发工具、支持组件、运行环境和示例文档等。它将使建立WebServices以及因特网应用程序的工作变得简单。
.NET框架主要由公共语言运行库,基础类库(Base Class Library),ASP.NET、VB.NET、C#等语言运行库三部分组成,如图6.1.1所示。
图6.1.1.NET框架示意图
(1)公共语言运行库(CLR)。
CLR是.NET框架的运行环境,负责运行和维护程序员编写的任何程序代码,包括提供所有的运行时服务:内存管理、线程执行、代码执行、安全验证、实时编译及其他系统服务等。CLR是.NET框架的核心。
ASP. NET的工作原理如下。用户向Web服务器发送访问一个Web页面的HTTP请求,Web服务器通过分析客户的HTTP请求来定位请求网页的位置。如果网页的文件扩展名为aspx,那么将这个文件送到SDK的CLR进行处理,当网页第一次被访问时,会被编译成MSIL中间语言后利用即时编辑器JIT生成相应机器代码并执行,然后获取HTML结果;如果已经执行过这个程序,那么就直接执行已编译好的程序并得到HTML结果。最后将响应HTTP请求的结果返回给客户端,浏览器就可以显示Web页面了。
可见,编写ASP.NET应用程序不需要使用特定的编译器,因为对各种语言的支持都来自CLR,各种编译器都是SDK的一部分。.NET框架明确规定,应用程序可以使用任何支持CLR的编程语言来编写。CLR将所有CLR相应的应用程序转换为微软中间语言(Intermediate Language, IL),然后,这种中间代码被执行平台进行编译。这种简单的处理方式使得用户使用某种语言编写的应用程序可以在任何使用CLR的操作系统上运行。
(2)基础类库(Base Class Library)。
.NET框架提供了让所有的.NET程序语言共享使用的基础类库,基础类库将成百个面向对象的类组成几组统一的、层次化的、可扩展的编程接口,提供了从基本输入输出到数据库操作各种功能,协助程序员利用这些共享的类别库快速开发各种应用程序。常见的类库有如下几种。
①System类:提供支持其他类所需基本服务,如底层服务、I/O、文本处理等。
②Data类:提供处理数据库的操作。
③XML类:提供处理XML文件的操作。
④Web类:用来完成用户界面和Web服务的任务。
⑤Windows Forms类:提供传统的桌面应用程序服务。
⑥Drawing类:提供创建图形、复杂字体等操作。
6.1.3 ASP.NET运行环境
为了建立一个ASP.NET的正确运行环境,服务器端必须安装如下软件:
(1)Windows Server 2003,Windows XP, Windows 7或更高版本;
(2)IIS 5. 0(Internet信息服务管理器5.0)或IIS 7.0更高版本;
(3). NET Framework SDK(.NET框架开发工具包);
(4)SQL Server数据库。
为了便于编写和调试程序,通常需要用户同时安装服务器端和客户端必需的软件。客户端使用普通的浏览器即可,如IE 5.0或更高版本。如果希望有高效的开发平台,建议安装Visual Studio 2010。
下面介绍主要软件的安装方法。
(1)在Windows XP环境下安装IIS 5.0。
IIS 5. 0附带在系统安装盘中。Server版本一般已经默认安装了IIS。否则需要自己安装IIS。安装方法如下:依次选择“开始”|“设置”|“控制面板”|“添加/删除程序”命令,在“添加/删除程序”对话框中选择“添加/删除Windows组件”按钮,就会弹出“Windows组件向导”对话框。在其中选择“Internet信息服务(IIS)”,然后单击“下一步”按钮,随后根据提示一步步安装即可。
安装完毕后,依次选择“开始”|“程序”|“管理工具”|“Internet服务管理器”菜单命令,就会出现“Internet信息服务”对话框。选择“默认Web站点”,右边显示的是“C:\inetpub\wwwroot”中的内容。该文件夹是默认WWW主目录,是IIS安装过程中自动生成的。其后即可进行IIS的相应配置(包括ASP.NET版本信息)和建立虚拟目录及配置。
(2)在Windows7环境下安装IIS 7.0。
Windows 7下安装IIS 7.0步骤如下:在Windows 7操作系统单击“控制面板”|“程序”,选择“打开或关闭Windows功能”。在弹出的Windows功能对话框中,选中“In-ternet信息服务”复选框,单击“确认”按钮,即可完成安装。
转到控制面板,单击“管理工具”选项,选择“Internet信息服务(IIS)管理器”选项。在“Internet信息服务(IIS)管理器”窗口,单击右侧的“绑定”超级链接选项,可以进行添加、编辑、删除和浏览绑定的网站的操作;可以在对话框中设置要绑定的网站的类型、IP地址、端口和主机名等信息。单击右侧的“基本设置”超级链接选项,可以在对话框中设置应用程序池、网站的物理路径等信息;可以在下拉列表中选择所要使用的相应ASP.NET版本等信息。
(3)安装.NET Framework SDK。
该软件可从微软中文网站http://www.microsoft.corn/china免费下载dotnetfx_2.0、dotnetfx 3.5、dotnetfx 4.0相应压缩包。下载后双击其中的dotnetfx.lexe安装文件就可以运行安装程序,根据提示采用默认设置即可完成。安装.NET Framework和.NET Frame-work SDK时应注意:.NET Framework SDK必须在IIS 5.0安装完成后再行安装,否则将无法使用。
(4)安装数据库系统,如SQL Server等。
(5)建议安装Visual Studio 2010。