C#程序设计实用教程 教学课件 ppt 作者 姜林美_ 第12章 Web网络应用

上传人:E**** 文档编号:89343854 上传时间:2019-05-23 格式:PPT 页数:33 大小:585.50KB
返回 下载 相关 举报
C#程序设计实用教程 教学课件 ppt 作者  姜林美_ 第12章  Web网络应用_第1页
第1页 / 共33页
C#程序设计实用教程 教学课件 ppt 作者  姜林美_ 第12章  Web网络应用_第2页
第2页 / 共33页
C#程序设计实用教程 教学课件 ppt 作者  姜林美_ 第12章  Web网络应用_第3页
第3页 / 共33页
C#程序设计实用教程 教学课件 ppt 作者  姜林美_ 第12章  Web网络应用_第4页
第4页 / 共33页
C#程序设计实用教程 教学课件 ppt 作者  姜林美_ 第12章  Web网络应用_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《C#程序设计实用教程 教学课件 ppt 作者 姜林美_ 第12章 Web网络应用》由会员分享,可在线阅读,更多相关《C#程序设计实用教程 教学课件 ppt 作者 姜林美_ 第12章 Web网络应用(33页珍藏版)》请在金锄头文库上搜索。

1、第12章 Web网络应用,Web网络应用是C#语言的重点应用之一,主要是创建ASP.NET网络应用程序、Web服务等。其中ASP.NET应用程序的框架设计,打破了原有的传统网页的模式,在技术上有所创新。 本章将主要介绍如何创建ASP.NET网络应用程序。,12.1 ASP.NET简介,ASP.NET是创建动态网页的新技术,继承了微软公司的两项主要技术:Active Server Page(ASP)和.NET。ASP.NET不仅可以生成动态Web页面,还提供了大量易用、可复用的预定义控件,使软件开发变得更加快捷。,12.1.1 什么是ASP.NET,在Web应用中,存在两种页面:静态页面和动态页

2、面,如图所示。,12.1.1 什么是ASP.NET,对于动态页面来说,如何动态提供服务内容呢?动态页面有两种提供动态内容的方法。 1客户端动态Web页面 在这种方式中,客户端浏览器上的模块完成提供动态内容的全部工作。HTML代码内部包含着能通过浏览器解释并执行的代码。当用户使用页面时,浏览器将运行其中的代码,并生成一个在浏览器中正常显示的HTML页面。 2服务器端动态Web页面 与客户端动态页面不同的是,服务器端动态页面由服务器解释执行页面中的指令。当用户请求页面时,请求返回到服务器,然后服务器将完成提供动态内容的工作,将其中的指令代码转换为相应的HTML,然后把HTML页面返回到浏览器。,1

3、2.1.2 IIS管理ASPX页面,当完成Web系统开发后,如何才能让其他用户通过网络来使用呢?Web服务器将提供这种服务。Web服务器是一个软件,用于管理Web页面,使这些页面能够通过网络在客户端的浏览器上使用。客户端可能与Web服务器在同一台机器上,也可能相隔万里。常见的Web服务器包括Apache,IIS以及WebSphere等。本书将详细介绍微软公司的IIS Web服务器。这是因为IIS服务器是目前能够运行ASP.NET的主要服务器。,12.1.2 IIS管理ASPX页面,1安装IIS (1)单击“开始”|“设置”|“控制面板”|“添加/删除程序”命令,弹出“添加/删除程序”对话框。在

4、“添加/删除程序”对话框中选择“添加/删除Windows组件”。 (2)选中Windows组件向导对话框中的“Internet信息服务(IIS)”复选项,然后单击“下一步”按钮。 (3)单击“确定”按钮,系统将自动完成IIS的安装。,12.1.2 IIS管理ASPX页面,2设置虚拟目录 Web服务器接受客户端用户的请求,然后在WWW服务器(存放网页的服务器)上寻找所要请求的网页。用户通过URL地址来访问网页。一个URL网页地址的格式如下: http:/127.0.0.1/sample/C12/Test/index.aspx 而Web服务器通过页面的物理地址从硬盘上寻找页面文件,保存位置如下:

5、D:示例代码C12Testindex.aspx 那么,Web服务器怎样确定URL地址与物理地址的对应关系呢?这是通过虚拟目录来实现的。虚拟目录是WWW服务器硬盘上的物理目录在Web服务器上的别名。,12.2 ASP.NET语法,ASP.NET作为一种新的动态页面开发技术,与以前的ASP相比有了新的内容,本节将介绍其基本的语法。,12.2.1 剖析ASPX页面,ASP.NET本身并非一种编程语言,而是一种创建动态页面的技术,用于把编程语言(Visual Basic.NET,C#,JavaScript)代码段嵌入到页面的HTML中。二者混合在一起,构成了ASPX页面。 把编程语言代码嵌入HTML是

6、指利用HTML标记,编程语言代码可以同HTML混为一体,并由Web服务器(IIS)将其从HTML中识别出来,交给ASP.NET模块编译执行,完成一定功能,最后将执行结果以HTML形式返回浏览器。,12.2.2 使用嵌入代码,在下面的各部分中,将介绍出现在ASPX文件中的ASP.NET常用语法。首先是标记对。使用过ASP的读者肯定不会对标记陌生,包含在标记内部的代码,将会在服务器上执行,并动态生成HTML。下面的示例演示ASP.NET如何使用动态产生HTML。 使用示例运行结果,12.2.3 使用.嵌入代码,同标记一样,.标记用于在HTML中标记指令代码。对于ASP.NET,标记有两个特殊的属性

7、:Language和Runat=“Server”。 使用示例运行结果,12.2.4 使用Server控件,控件是ASPX页面上重要的元素,如输入框、按钮、标签等。同HTML中的控件不同,ASPX页面上主要使用Server控件,其特征是拥有Runat=“Server”属性。Runat=“Server”是Server控件非常重要的属性。当ASP.NET网页执行时,.NET会检查页面上的标签有无Runat=“Server”属性。如果没有,就会被直接发送到客户端的浏览器进行解析;如果有,则表示这个控件可以被.NET程序所控制,需要等到程序执行完毕,再将HTML控件的执行结果发送到客户端浏览器。 使用控

8、件示例,12.2.5 使用,在之间的代码为注释语句,当ASP.NET模块处理ASPX文档时,将不认为它们是嵌入在HTML中的可执行代码。下面仍以9.2.2节程序Tag1为例,若在中的代码添加注释,改变为: 1. ,12.2.6 用设置页面属性,在ASPX页面的首页,将使用来设置整个页面的属性,包括以下几个属性: (1)Language=“C#|VB”:设置本页面所采用的编程语言,默认为“C#”; (2)ResponseEdcodeing=“.”:设置ASPX页面编码方式,默认为Unicode; (3)Trace=“True|False”:设置是否在程序中显示代码直行的跟踪(Trace)信息;

9、(4)TraceMode=“SortType”:设置跟踪信息的排序方式,默认为根据执行时间排序“SortByTime”。,12.2.7 使用引入类库,ASP.NET需要使用.NET基础类库的支持,如果想要引入某个命名空间,需要使用指令。例如,要引入System.Data空间,需要用下面的语句。 这样,在本页面中,就可以使用数据库操作的各个类了。另外,ASP.NET默认支持8个空间,即这8个空间中的类不需要使用,可以直接使用。这8个空间简述如下。 (1)System:包含最基本的类及数据类型。 (2)System.Text:包含各种编码类、字符编码转换类。 (3)System.Collectio

10、ns:包含定义各种集合的类,如列表、队列、数组、哈希表、字典等。 (4)System.Web:包含了Web应用中客户端/服务器间联系的各种类。 (5)System.Web.UI:包含了各种用于Web的服务器控件。 (6)System.Web.UI.HtmlControls:包含了HTML控件。 (7)System.Web.UI.WebControls:包含了Web控件。 (8)System.Threading:提供多线程变成的类。,12.3 ASP.NET内置对象,由于Web服务是基于HTTP协议传递数据的,而HTTP协议是一个不记录中间状态的协议,即在客户端使用浏览器访问了Web应用系统后,

11、浏览器将不会保留每一次访问系统的中间信息。如果想要保留这些信息,可以使用ASP.NET提供的内置对象,用这些对象来保存Web服务状态信息。这些对象包括Application,Session,Server,Response及Request等。,12.3.1 使用Application对象保存数据,Application对象是System.Web.HttpApplicationState类的实例,对象内保存的信息可以在Web服务整个运行期间保存,并且可以被调用Web服务的所有用户使用。如果Web服务类派生自WebService类,那么就可以直接使用Application对象。在Web服务中使用Ap

12、plication对象主要包括以下两种情况。 1在Web服务中,将状态保存到Application对象 2从Application对象中获取状态信息,12.3.2 使用Session对象保存数据,与Application对象类似,Session对象也可以在整个Web服务运行过程中保存信息,但它保存的信息只能由单个用户所访问。此处所指的用户是指一次访问Web服务过程的用户,如果一个用户在一次访问Web服务后离开,稍后又重新访问Web服务,那么Web服务也将其视为两个不同的用户。 对于从WebService中派生的Web服务类,只有当WebMethod特性的EnableSession属性设置为Tr

13、ue时,才能使用Session保存信息。,12.3.3 访问Server对象,Server对象是System.Web.HttpServerUtility类的实例,提供了一系列可处理Web请求的方法。通过Server对象,Web服务使用者可以获取Web服务所在服务器的名称、物理路径等。下面的代码,在Web服务中添加了一个GetServerName()方法,该方法利用Server对象返回服务器名称: 1. WebMethod( 2. Description=“返回Web服务器名称“ 3. ) 4. public string GetServerName() 5. 6. return Server.

14、MachineName; 7. ,12.3.4 访问Request对象,同ASP.NET Web程序一样,Web服务同样也可以使用ASP.NET内置的Request对象,通过此对象,客户可以向Web服务发送HTTP请求信息。用户可以通过WebService类的Context属性来访问Request对象,Request对象的常用属性和方法说明,12.3.5 访问Response对象,与Request对象相反,Web服务中的Response对象实现Web服务向客户发送信息的功能。与ASP.NET应用程序类似,Web服务中的Response对象也是System.Web.HttpResponse类的实

15、例,不同之处在于,在Web服务中需要通过WebServices类的Context属性来获取Response对象。,12.4 代码绑定技术,前面介绍了使用和方式把C#代码嵌入到HTML中的方式,这也是其他动态网页开发语言常用的方式。这种方式的缺点在于,代码并不容易管理,整体结构性不强,页面的逻辑功能和显示分离的不够清晰。.NET采用了一种更好的策略:代码绑定技术。,12.4.1 分离显示功能和逻辑功能,ASP.NET的代码绑定技术的目的是:把代码文件(C#代码)和页面显示文件(HTML代码)分离在不同的文档中,各自独立完成Web页面的逻辑功能和显示功能;然后通过一个机制将两者联系在一起,达到把C

16、#代码嵌入到HTML中的效果。 在向一个ASP.NET程序中添加一个ASPX页面时,ASP.NET将自动生成一个相应的CS文件。其中,.aspx文件主要用于实现页面的显示,而.cs文件用于完成页面的数据处理和逻辑功能。以9.2.2节给出的“程序Tag1为例,打开程序所在的目录,会发现包含以下文件: (1)WebForm1.aspx; (2)WebForm1.aspx.cs。,12.4.2 使用绑定代码,ASP.NET 2.0使用指令完成代码绑定。为了更好地显示两个文件的绑定关系,请读者重新实现本书1.5.3节给出的ASP.NET示例程序“HelloWorld_ASPNET”,然后对.NET自动生成的ASPX页面进行剖析。 1ASPX页面的结构 2实现页面功能的C#代码实现,12.4.3 控件事件接收用户输入,ASP.NET用指令把页面显示和需要完成的功能代码绑定在一起,然而,当用户操作页面时,如何根据用户的动作触发响应的代码呢?例如,在9.4.3节给出的示例中(如图9-10所示),当用户单击“显示”按钮时,页面如何知道这时需要触发执行.cs文件中

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号