《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt

上传人(卖家):momomo 文档编号:6094187 上传时间:2023-05-27 格式:PPT 页数:23 大小:233KB
下载 相关 举报
《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt_第1页
第1页 / 共23页
《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt_第2页
第2页 / 共23页
《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt_第3页
第3页 / 共23页
《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt_第4页
第4页 / 共23页
《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、 23.1 Web Service概述概述 23.2 Web Service的应用场合的应用场合 23.3 Web Service和和.NET Framework 23.4 创建简单的创建简单的ASP.NET Web Service 23.5 测试测试Web Service 23.6 小结小结23.1 Web Service概述Web Service是由企业发布的用于完成其特定商是由企业发布的用于完成其特定商务需求的在线应用服务,其他公司或应用软件能务需求的在线应用服务,其他公司或应用软件能够通过互联网来访问并使用该在线服务。够通过互联网来访问并使用该在线服务。Web Service是一个应用

2、组件,能够逻辑性地为是一个应用组件,能够逻辑性地为其他应用程序提供数据与服务,各应用程序通过其他应用程序提供数据与服务,各应用程序通过网络协议和规定的一些标准数据格式(网络协议和规定的一些标准数据格式(Http、XML、Soap)来访问)来访问Web Service,通过,通过Web Service内部执行得到所需结果。内部执行得到所需结果。Web Service可为不同的应用程序提供一种连接可为不同的应用程序提供一种连接其数据的途径,这样就可以在不同的应用程序与其数据的途径,这样就可以在不同的应用程序与平台之间来交换数据。平台之间来交换数据。23.1.1 Web Service特点Web S

3、ervice就是在计算机之间使用就是在计算机之间使用HTTP执行远程方法调用的一种新方法,即在远执行远程方法调用的一种新方法,即在远程服务器与客户端之间传送数据和信息的程服务器与客户端之间传送数据和信息的一种方法。一种方法。Web Service使用使用 XML 来编来编/解解码数据,并使用码数据,并使用SOAP传输数据。用户能够传输数据。用户能够通过通过Web Service调用已经实现某个功能调用已经实现某个功能的应用程序。的应用程序。Web Service有两种类型的应用,即重复有两种类型的应用,即重复使用现有的应用程序组件和连接现有的软使用现有的应用程序组件和连接现有的软件。件。23.

4、1.1 Web Service特点 针对以往技术存在的一些局限性,针对以往技术存在的一些局限性,Web Service有了很大有了很大的改进,具体如下。的改进,具体如下。平台互操作性:平台互操作性:Web Service的客户不必使用某一特定的开发平的客户不必使用某一特定的开发平台来实现该服务。台来实现该服务。特定的标准规范:特定的标准规范:Web Service使用了标准使用了标准HTTP协议通信,以及协议通信,以及在其基础上发展而来的在其基础上发展而来的SOAP(Simple Object Access Protocol,简易对象访问协议)标准,另外还有简易对象访问协议)标准,另外还有WS

5、DL(Web Services Description Language,Web services 描述语言)、描述语言)、UDDI(Description Discovery and Integration,统一描述、发现和,统一描述、发现和集成协议)和集成协议)和DISCO(Discovery of Web Services,Web Services的查找)规范。的查找)规范。可伸缩性:可以使应用程序避免重写。可伸缩性:可以使应用程序避免重写。松耦合:松耦合:Web Service使用基于消息的协议通信使得它具有客户使用基于消息的协议通信使得它具有客户和服务独立发展的特性。和服务独立发展的

6、特性。B2B的集成:的集成:B2B指的是指的是Business to Business,即企业与企业,即企业与企业之间通过互联网进行产品、服务及信息的交换。通过之间通过互联网进行产品、服务及信息的交换。通过Web Service,公司只需把关键的商务应用,公司只需把关键的商务应用“暴露暴露”给指定的供应商和给指定的供应商和客户,就可以让任何指定的合作伙伴调用这些商务逻辑,与他们客户,就可以让任何指定的合作伙伴调用这些商务逻辑,与他们的运行平台和开发语言无关。的运行平台和开发语言无关。23.1.2 Web Service的技术支持 SOAP:由于:由于HTTP得到了所有的互联网浏览器及服务器得到

7、了所有的互联网浏览器及服务器的支持,因此通过的支持,因此通过HTTP在应用程序间通信是最好的解决在应用程序间通信是最好的解决方案,方案,SOAP就负责完成该任务。就负责完成该任务。SOAP是一种简单的基于是一种简单的基于XML的协议,是的协议,是Web Service通通信的核心规范。一条信的核心规范。一条 SOAP消息就是一个普通的消息就是一个普通的XML文文档,包含下列元素。档,包含下列元素。必需的必需的Envelope元素:它是传递消息的根元素,可把此元素:它是传递消息的根元素,可把此XML文档文档标识为一条标识为一条SOAP消息。消息。可选的可选的Header元素:包含头部信息。若使用

8、了该元素,则必须将元素:包含头部信息。若使用了该元素,则必须将它放在它放在Envelope的第一个元素的位置上,用于传递一些辅助性的的第一个元素的位置上,用于传递一些辅助性的附加消息,如身份验证、会话等。附加消息,如身份验证、会话等。必需的必需的Body元素:顾名思义,即元素:顾名思义,即SOAP的主体,也就是消息体,的主体,也就是消息体,包含所有的调用和响应信息。包含所有的调用和响应信息。可选的可选的Fault元素:描述发送消息产生异常时所报告的错误信息。元素:描述发送消息产生异常时所报告的错误信息。23.1.2 Web Service的技术支持 示例:示例:SOAP消息的基本结构如下。消息

9、的基本结构如下。.0001 .23.1.2 Web Service的技术支持WSDL是一种基于是一种基于XML的语言,用于描述的语言,用于描述Web Service以及对其所有方法和调用方式。以及对其所有方法和调用方式。DISCO(discovery的简称)是一种规范,用于的简称)是一种规范,用于创建可查询的创建可查询的XML文档,该文档可以找到文档,该文档可以找到WSDL文档。文档。UDDI(Universal Description Discovery and Integration,通用描述、发现与集成服务)是一,通用描述、发现与集成服务)是一种标准规范,定义了一种注册和发现种标准规范,

10、定义了一种注册和发现Web Service信息的方式。信息的方式。UDDI正在迅速演化为一种正在迅速演化为一种标准,通过定义如何与完备的标准,通过定义如何与完备的Web服务信息库进服务信息库进行交互来超越行交互来超越DISCO。23.2 Web Service的应用场合房屋租赁信息搜索应用程序房屋租赁信息搜索应用程序订餐信息应用程序订餐信息应用程序智能客户端应用程序智能客户端应用程序注意,虽然注意,虽然Web Service能够为能够为Web应用程序带应用程序带来许多方便,但某些情况下来许多方便,但某些情况下Web Service并不适并不适用,这些情况分别如下:用,这些情况分别如下:单机应用

11、程序:通常很多应用程序只需要与计算机上单机应用程序:通常很多应用程序只需要与计算机上的其他应用程序通信即可,所以此种情况下的其他应用程序通信即可,所以此种情况下Web Service并不适用,只需本地的并不适用,只需本地的API即可,使用远程的即可,使用远程的API会使系统消耗太大,并不会带来应用方面的优势。会使系统消耗太大,并不会带来应用方面的优势。局域网应用程序:在很多此类应用中,所有应用程序局域网应用程序:在很多此类应用中,所有应用程序都在都在Windows平台下使用平台下使用DCOM,且运行在同一个局,且运行在同一个局域网中。在此种情况下,域网中。在此种情况下,DCOM要比要比SOAP

12、/HTTP效率效率高得多。高得多。23.3 Web Service和.NET Framework.NETFramwork提供了提供了3个命名空间:个命名空间:System.Web.Services命名空间:包含了用于创建命名空间:包含了用于创建Web Service的基本类,如的基本类,如WebService类。类。System.Web.Services.Description命名空间:其中命名空间:其中包含的类可以用于查询包含的类可以用于查询WSDL文档,并可通过文档,并可通过WSDL文档来描述文档来描述Web Service。System.Web.Services.Protocols命名空

13、间:其中命名空间:其中包含的类可以用于创建包含的类可以用于创建SOAP请求及其响应。请求及其响应。在在.NET Framework中,中,Web服务可以应用于服务可以应用于Windows Forms、Web Forms或控制台应用或控制台应用程序中。程序中。23.3.1 创建Web Service WebService类为类为Web Service定义的可定义的可选基类,该基类提供对公共选基类,该基类提供对公共ASP.NET对象对象的直接访问。的直接访问。WebService类中派生出的类中派生出的类可用于创建类可用于创建Web Service,例如下列代,例如下列代码:码:public cl

14、ass Service:System.Web.Services.WebService WebServiceAttribute类用于向类用于向Web Service 添加附加信息,例如描述其功能添加附加信息,例如描述其功能的字符串。的字符串。23.3.1 创建Web Service示例:示例:下列代码演示下列代码演示WebServiceAttribute类实例。类实例。WebService(Description=获取时间获取时间,Namespace=http:/ class Service:System.Web.Services.WebService WebMethod public stri

15、ng Time()return Context.Timestamp.TimeOfDay.ToString();23.3.1 创建Web Service WebMethodAttribute类类:Web Service中需使用中需使用WebMethod属性来标记所有可属性来标记所有可以使用的方法,若方法前没有用该属性标以使用的方法,若方法前没有用该属性标记的话则是无效的方法,不能被使用。记的话则是无效的方法,不能被使用。示例:示例:public class Service:System.Web.Services.WebService WebMethod(Description=获取时间获取时间)

16、public string Time()return Context.Timestamp.TimeOfDay.ToString();23.3.2 客户端程序调用调用Web Service的计算机称为客户端。客户端的计算机称为客户端。客户端的调用步骤如下。的调用步骤如下。通过通过URL或或UDDI注册寻找相应的注册寻找相应的Web Service,并请,并请求描述该求描述该Web Service的的WSDL文档,由此文档生成一文档,由此文档生成一个代理类。个代理类。在客户端调用之前要先实例化一个该代理的对象,然在客户端调用之前要先实例化一个该代理的对象,然后才可调用其发布的方法。后才可调用其发布

17、的方法。客户端将方法名和参数等信息加入到客户端将方法名和参数等信息加入到SOAP中,通过中,通过HTTP传送到传送到Web Service的服务器端。的服务器端。服务器端接收服务器端接收SOAP中的消息并解析,执行相应的方法,中的消息并解析,执行相应的方法,将执行结果加入到将执行结果加入到SOAP中,再经过中,再经过HTTP传送回客户传送回客户端。端。客户端代理接收客户端代理接收SOAP消息并解析,将服务器端得到的消息并解析,将服务器端得到的结果返回给客户端。结果返回给客户端。23.3.2 客户端程序在在Visual Studio 2008中,添加代理类的过中,添加代理类的过程可通过程可通过【

18、Add Web Reference】命令完命令完成。添加代理类之后,该类自动包含一些成。添加代理类之后,该类自动包含一些方法,这些方法与方法,这些方法与Web Service方法同名。方法同名。客户端使用代理类的代码如下:客户端使用代理类的代码如下:Service myService=new Service();string result=myService.HelloWorld();23.4 创建简单的ASP.NET Web Service在在Visual Studio 2008中创建中创建Web Service的步骤非常简单,只需在菜单栏中单击的步骤非常简单,只需在菜单栏中单击【新建新建】

19、|【项目项目】命令,在弹出的命令,在弹出的【新建新建项目项目】窗口中选择窗口中选择“ASP.NET Web服务服务】应用程序应用程序”即可。即可。23.4.1 生成文件创建成功后,项目模板生成了创建成功后,项目模板生成了Service1.asm和和Service1.asmx.cs两个文件。两个文件。Service1.asmx.cs文件是文件是Service1.asmx生成的生成的代码文件,因而两者具有相同的名称。代码文件,因而两者具有相同的名称。Service1.asmx:保存:保存Web Service类。所有类。所有ASP.NET Web Service都使用都使用.asmx扩展名来标识,

20、扩展名来标识,其源代码包含在文件其源代码包含在文件Service1.asmx.cs中。中。Service1.asmx.cs:项目模板在该文件中生成了一个:项目模板在该文件中生成了一个派生自派生自System.Web.Services.WebService的类的类Service1。23.4.1 生成文件Service1.asmx.cs中的示例代码:中的示例代码:namespace PWebService /Service1 的摘要说明的摘要说明 /WebService(Namespace=http:/tempuri.org/)public class Service1:System.Web.Se

21、rvices.WebService WebMethod public string HelloWorld()return Hello World;23.4.2 添加Web方法为刚创建的为刚创建的WebService添加一个简单的方法添加一个简单的方法Add(),接,接收两个数字,并对其进行相加操作,执行完毕后将结果收两个数字,并对其进行相加操作,执行完毕后将结果返回客户端。返回客户端。示例代码:示例代码:namespace PWebService WebService(Namespace=http:/)public class Service1:System.Web.Services.WebS

22、ervice WebMethod public int Add(int a,int b)/所添加的方法所添加的方法 int num;num=a+b;return num;23.5 测试Web Service在在Visual Studio 2008中直接用快捷键中直接用快捷键【Ctrl】+【F5】调试,浏览器中列出了服调试,浏览器中列出了服务中的方法务中的方法Add()。23.5 测试Web Service选择方法选择方法Add()的链接,可简单地测试的链接,可简单地测试Web服务,也可得到服务,也可得到SOAP请求和响应的信息。请求和响应的信息。23.5 测试Web Service当一个当一个

23、Web Service测试正确后,就可以测试正确后,就可以发布和使用了,其发布过程如下。发布和使用了,其发布过程如下。在菜单栏中单击在菜单栏中单击【生成生成】|【发布网站发布网站】命令。命令。单击省略号按钮,在弹出的单击省略号按钮,在弹出的【新虚拟目录新虚拟目录】窗窗口中选择目标位置,这里选择本地口中选择目标位置,这里选择本地IIS服务器。服务器。单击单击【发布发布】按钮,即发布成功。按钮,即发布成功。在在.NET中使用发布的中使用发布的Web Service 新建新建ASP.NET Web应用程序,在该项目中添应用程序,在该项目中添加加Web引用。引用。单击单击“本地计算机上的本地计算机上的

24、Web服务服务”,列出本地,列出本地计算机上的所有计算机上的所有Web服务服务。23.5 测试Web Service选择刚创建的选择刚创建的Web服务服务Service1,在,在【Web引用引用名名】文本框中填写相应的引用名,默认为文本框中填写相应的引用名,默认为localhost,也可以填写其他名称。,也可以填写其他名称。单击单击【添加引用添加引用】按钮,即引用成功。按钮,即引用成功。在在Default.aspx页面中拖放页面中拖放3个个TextBox控件和一控件和一个个Button控件。控件。编写编写Button控件的控件的Click事件,代码如下。事件,代码如下。protected vo

25、id Button1_Click(object sender,EventArgs e)int x=int.Parse(TextBox1.Text);int y=int.Parse(TextBox2.Text);localhost.Service1 myserv=new localhost.Service1();TextBox3.Text=myserv.Add(x,y).ToString();运行该网站,测试运行该网站,测试Web Service,结果正确。,结果正确。23.6 小结本章介绍了本章介绍了Web Service的相关知识和使用方法。的相关知识和使用方法。首先介绍了首先介绍了Web

26、Service的相关知识、优点以及的相关知识、优点以及使用规范;接下来描述了使用规范;接下来描述了Web Service的应用场的应用场合,通过常见的应用程序合,通过常见的应用程序房屋租赁信息搜索房屋租赁信息搜索应用程序、订餐信息应用程序和智能客户端应用应用程序、订餐信息应用程序和智能客户端应用程序,最后介绍了程序,最后介绍了Web Service应用程序的创建、应用程序的创建、调试和测试。调试和测试。Web Service为开发人员带来了一组全新的编程为开发人员带来了一组全新的编程方式和工具,提供了一种机制,供传统开发人员方式和工具,提供了一种机制,供传统开发人员以新的方式展示他们的框架和商务服务。以新的方式展示他们的框架和商务服务。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 各类题库
版权提示 | 免责声明

1,本文(《C Sharp 3.0从基础到项目实战》课件第23章Web Service开发.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|