没有合适的资源?快使用搜索试试~ 我知道了~
c#_操作webservice(经典入门教程)参照.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
15 浏览量
2022-02-15
17:28:01
上传
评论
收藏 1.16MB PDF 举报
c#_操作webservice(经典入门教程)参照.pdf
资源推荐
资源详情
资源评论







Web Service 的基本概念
Web Service 也叫 XML Web Service WebService 是一种可以接收从 Internet 或者 Intranet 上的其它
系统中传递过来的请求,轻量级的独立的通讯技术。是 :通过 SOAP 在 Web 上提供的软件(服务),
使用 WSDL 文件进行(说明),并通过( UDDI )进行注册。
XML :(Extensible Markup Language) 扩展型可标记语言。面向短期的临时数据处理、面向万维网络,
是 Soap 的基础。
Soap:(Simple Object Access Protocol) 简单对象存取协议。是 XML Web Service 的通信协议。当用
户通过 UDDI 找到你的 WSDL 描述文档后,他通过可以 SOAP 调用你建立的 Web 服务中的一个或多
个操作。 SOAP 是 XML 文档形式的调用方法的规范,它可以支持不同的底层接口,像 HTTP(S) 或者
SMTP。
WSDL :(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP
消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。
UDDI (Universal Description, Discovery, and Integration) 是一个主要针对 Web 服务供应商和使用
者的新项目。在用户能够调用 Web 服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的
接口定义,还要在服务端来编制软件, UDDI 是一种根据描述文档来引导系统查找相应服务的机制。
UDDI 利用 SOAP 消息机制(标准的 XML/HTTP )来发布,编辑,浏览以及查找注册信息。它采用
XML 格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。
概念补充:
http soap 关系
http: 是一个客户端和服务器端请求和应答的标准( TCP)。http 协议其目的是为了提供一种发布和接收 htttp 页面的
方法
一 http 协议的客户端与服务器的交互: 由 HTTP 客户端发起一个请求,建立一个到服务器指定端口(默认是 80 端
口)的 TCP 连接。 HTTP 服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发
回一个状态行,比如 "HTTP/1.1 200 OK" ,和(响应的)消息,消息的消息体可能是请求的文件、错误消息、或
者其它一些信息。
soap 协议:它描述了一种在分散或分布式的环境中如何交换信息的轻量级协议。 soap 在 http 协议的基础上,一
个基于 XML 的协议。
不同:都是底层的通信协议,请求包的格式不同而已, soap 包是 XML 格式 ,http 纯文本格式。

关系: SOAP 是个通信协议, SOAP 在 HTTP 协议的基础上,把编写成 XML 的 REQUEST 参数 , 放在 HTTP
BODY 上提交个 WEB SERVICE 服务器 (SERVLET ,ASP 什么的 ) 处理完成后,结果也写成 XML 作为
RESPONSE 送回用户端, 为了使用户端和 WEB SERVICE 可以相互对应,可以使用 WSDL 作为这种通信方式
的描述文件, 利用 WSDL 工具可以自动生成 WS 和用户端的框架文件, SOAP 具备把复杂对象序列化捆绑到 XML
里去的能力。
Membrane SOAP Monitor ,这个 soap 监听工具。这是德国的一家在线 web 服务注册公司 predic8 做的开源 soap
监听工具,简单好用。
windows 下最新的版本为 1.1.2 版,下载地址:
http://mirror.predic8.com/membrane/monitor/win86/membrane-monitor-win86-1.1.2.zip
还有 linux 下的版本:
http://download.predic8.com/membrane/monitor/linux-x86/membrane-monitor-linux-x86-0.9.4.tgz
源码: http://download.predic8.com/membrane/monitor/src/membrane-monitor-src-0.9.4.zip
具体使用:
1) 运行 exe 文件 (linux 下可能是 jar 文件 );
2) 点击菜单项 membrane->add rule ,进入后默认选项即可,点 next ;
3) 设置端口号 (不产生冲突的任意端口 ),点 next ;
4) 设置主机及端口 (部署服务的地址及服务器的端口 ),完成。
当调用网上发布的服务时,如检查 qq 是否在线的服务:
http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl
可将 4) 中的 host 设为远端服务的网址,如 www.webxml.com.cn ,端口设为服务的端口,上面就是 80 端口。
当我们监听 soap 消息时,只要访问了 web 服务,即可在 membrane 的界面显示发送及接受的 soap 消息
概念补充:
View Code
XML Web Service 的特点
View Code

二、 Web Service 开发
.net 平台内建了对 Web Service 的支持,包括 Web Service 的构建和使用。与其它开发平台不同,使
用.net 平台,你不需要其他的工具或者 SDK 就可以完成 Web Service 的开发了。.net Framework 本身
就全面支持 Web Service ,包括服务器端的请求处理器和对客户端发送和接受 SOAP 消息的支持。下
来我们就一步一步的用 Microsoft Visual Studio .net 20058 (后面简称 VS.Net 2008 )创建和使用一个
简单的 Web Service 。
2.1、用创建一个最简单的 Web Service
首先,打开 VS2005, 打开 "文件 -新建-网站",选择 "ASP.NET Web 服务 "
查看 Service.cs 代码,你会发现 VS.Net 2005 已经为 Web Service 文件建立了缺省的框架。原始代码
为:
?
默认工程里面已经有一个 Hello World 的方法了,
?

namespace WebService1
{
/// <summary>
/// Service1 的摘要说明
/// </summary>
[WebService(Namespace = " http://tempuri.org/ ")]
// 用于向 XML Web services 添加附加信息,如描述其功能的字符串。
// 对于将要发布和执行的 XML Web services 来说, WebServiceAttribute 不是必需的。
// 可以使用 WebServiceAttribute 为 XML Web services 指定不受公共语言运行库标识符(用于 XML
//XML Web services 在成为公共之前,应该更改其默认的 XML 命名空间。
// 每个 XML Web services 都需要唯一的 XML 命名空间来标识它,以便客户端应用程序能够将它与网络
// 但是已发布的 XML Web services 应该使用更具永久性的命名空间。例如,可以将公司的 Internet
// 虽然很多 XML Web services 的 XML 命名空间与 URL 很相似,但是,它们无需指向 Web 上的某一实际
可以使用 Namespace 属性更改默认的 XML 命名空间。
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]//ConformsTo 获取或设置绑定声
// 声明定义一个或多个 XML Web services 方法的绑定。无法继承此类。
// 按 Web 服务描述语言 (WSDL) 的定义,绑定类似于一个接口,原因是它定义一组具体的操作。
// 每个 XML Web services 方法都是特定绑定中的一项操作。 XML Web services 方法是 XML Web serv
// 或者是在应用于实现 XML Web services 的类的 WebServiceBindingAttribute 中指定的绑定的成员
//XML Web services 可以通过将多个 WebServiceBindingAttribute 属性应用于 XML Web services 来
// 将一个或多个 WebServiceAttribute 属性应用到 XML Web services 之后,可以将 SoapDocumentMe
// 以指示由特定的 XML Web services 方法实现的绑定操作。
// 设置 SoapDocumentMethodAttribute 或 SoapRpcMethodAttribute 的 Binding 属性以指定 XML Web ser
[System.ComponentModel.ToolboxItem(false)]// 提供工具箱项的基实现。
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
// [System.Web.Script.Services.ScriptService]
public class Service1 : System.Web.Services.WebService//
// 表示此网站项目实现的一个 Web 服务,如同将此网站引用添加到项目时以 Visual Studio 生成的 .asmx
{
[WebMethod]// 向使用 ASP.NET 创建的 XML Web services 中的某个方法添加此属性 (Attribute)
// 初始化 WebMethodAttribute 类的新实例。
public string HelloWorld()
{
return "Hello World";
}
}
}
剩余15页未读,继续阅读
资源评论

gw19501103285
- 粉丝: 1
- 资源: 7万+

下载权益

C知道特权

VIP文章

课程特权

开通VIP

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
